Java Programming For Complete Beginners And Experts

Posted By: ELK1nG

Java Programming For Complete Beginners And Experts
Last updated 10/2021
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 19.39 GB | Duration: 49h 31m

Learn Java Programming In This Course With 275+ Coding Examples And Become A Complete Java Programmer

What you'll learn
Learn Java's fundamental and advanced features with considering internals of JVM.
Learn and Master Object-Oriented Programming by following the appropriate examples.
Learn and Master Inheritance, Polymorphism, Abstraction
Learn and Master Exceptions, Generics, Collections, Concurrency, Multi-threading, Network Programming
Learn and Master Java IO, Java NIO, JDBC with MySQL, Garbage Collector, Annotations, Reflection, Regular Expressions.
Learn And Master Functional Programming using Java 8 features like Lambda Expressions and Streams
Following the lectures, create a number of applications that will assist you in covering the concept.
Following the assignment and their solutions, create a number of applications that will assist you in covering the concept.
By solving the quizzes, you will gain experience with the Java Certification Exams and have a comprehensive understanding of the sections.
Learn how to use IDE (IntelliJ) Features to code quickly
Requirements
A computer, patience, passion and concentration.
Description
What will you learn?Learn Java Programming In This Course With 275+ Coding Examples And Become A Complete Java ProgrammerLearn Java's fundamental and advanced features with considering the internals of JVM.Learn And Master Object-Oriented Programming by following the appropriate examples.Learn And Master Inheritance, Polymorphism, AbstractionLearn And Master Exceptions, Generics, Collections, Concurrency, Multi-threading, Network ProgrammingLearn And Master Java IO, Java NIO, JDBC with MySQL, Garbage Collector, Annotations, Reflection, Regular Expressions.Learn And Master Functional Programming using Java 8 features like Lambda Expressions and StreamsFollowing the lectures, create a number of applications that will assist you in covering the concept.Following the assignment and their solutions, create a number of applications that will assist you in covering the concept.By solving the quizzes, you will gain experience with the Java Certification Exams and have a comprehensive understanding of the sections.Learn how to use IDE (IntelliJ) Features to code quicklyWhy should you learn Java?There are many reasons to learn Java. Let me mention the most important ones.1. Java is the most in-demand programming language in the world.2. There is no limit to what you can build with Java.3. Java developers make great money.4. Java has a large community of support.5. Java is a beginner-friendly language, which makes it an ideal language for newcomers.For all these reasons, Java will give you a big competitive advantage.If you follow this course with patience, you can start from scratch and become a master.why do you need this course?This course has been developed for Java programmer candidates and also for experienced Java programmers who want to boost their Object-Oriented Programming skills and learn advanced Java programming concepts.This course has 36 sections, 285 video lectures, 36 quizzes, and 50 coding assignments.Lectures cover the most required topics, including code resources, with line-by-line explanation comments. Quizzes consist of selected questions that will help you prepare for the Oracle Java Certification exams. Assignments will help you code yourselves with instructions. You will also have a downloadable instructor solution for each assignment.LecturesThis course has 36 sections, 285 video lectures. Lectures cover the most required topics. Each video lecture has a short presentation part of about 1 minute on average that gives the theoretical overview of the topic. During each video lecture, I will develop a basic application step-by-step using IntelliJ that covers the related topic. For each lecture, a downloadable resource is provided that includes all java source files. All Java source files have line-by-line explanation comments.QuizzesThis course has 36 quizzes. Each section has one multiple-choice quiz. Questions are selected to complement the lecture. These selected questions will also help you prepare for the Oracle Java Certification exams and job interviews. Please do not skip the quizzes if you want to have a comprehensive understanding of the lectures.AssignmentsThis course has 50 coding assignments. Each section has at least one assignment. Assignments have been prepared to help you code yourselves and have a comprehensive understanding of the topic. With each assignment, you will be given a problem and expected to solve it according to the given instructions. A downloadable solution is provided for each assignment. Also, you can share your solution with other students and get feedback from them. These assignments will boost your coding capability. Please do not skip the assignments if you want to have a comprehensive understanding of the lectures.

Overview

Section 1: COURSE OVERVIEW

Lecture 1 Why Should You Learn Java?

Lecture 2 Sections And Lectures

Lecture 3 Assignments

Lecture 4 Quizzes

Section 2: INTRODUCTION TO JAVA LANGUAGE

Lecture 5 The Brief History Of Java

Lecture 6 Java As A Language

Lecture 7 JDK, JRE AND JVM

Lecture 8 How Does JRE Work?

Lecture 9 Java Virtual Machine(JVM)

Section 3: DATA TYPES AND VARIABLES

Lecture 10 Data Types And Variables

Lecture 11 Non-Primitive String

Lecture 12 Primitive Integral Data Types

Lecture 13 Primitive Floating Point Data Types

Lecture 14 Primitive Boolean Data Type

Lecture 15 Primitive Character Data Type

Lecture 16 Local Variables, Initial And Default Values

Lecture 17 Automatic Implicit Type Casting Or Widening

Lecture 18 Explicit Type Casting Or Narrowing

Lecture 19 Type Promotion And Explicit Type Casting In Expressions

Lecture 20 Representing Numeric Literals In Binary, Octal And Hexadecimal Bases

Lecture 21 Numeric Literals And Use Of Underscore

Lecture 22 Scaled And Exponential Numeric Literals

Section 4: OPERATORS

Lecture 23 Arithmetic Operators

Lecture 24 Unary Operators

Lecture 25 Bitwise Logic Operators

Lecture 26 Bitwise Shift Operators

Lecture 27 Comparison Operators

Lecture 28 Logic Operators

Lecture 29 Assignment Operators

Lecture 30 Ternary Or Conditional Operator

Lecture 31 Operator Presedence

Section 5: CONDITIONAL FLOW CONTROL

Lecture 32 if Statement

Lecture 33 if else Statement

Lecture 34 if else if Ladder

Lecture 35 Nested If

Lecture 36 Switch Case Statement

Section 6: LOOPS

Lecture 37 For Loop

Lecture 38 While Loop

Lecture 39 Do While Loop

Lecture 40 Infinite Loops

Lecture 41 Break Continue Statements

Lecture 42 Nested Loops

Lecture 43 Labeled Loops

Section 7: ARRAYS

Lecture 44 What Is Array ? - Array Declaration And Instantiation

Lecture 45 Initializing Arrays

Lecture 46 Accessing And Modifying Array Elements

Lecture 47 Array Length, Traversing Through Arrays, Advanced For Loop

Lecture 48 Multidimensional Arrays

Section 8: METHODS

Lecture 49 Method Signature And Creating Methods

Lecture 50 Calling Methods

Lecture 51 Method Overloading

Lecture 52 Recursive Methods

Section 9: BASICS OF OBJECT ORIENTED PROGRAMMING

Lecture 53 What is Object Oriented Programming ?

Lecture 54 Class And Object

Lecture 55 Creating Class Fields And Methods

Lecture 56 Creating Objects And Accessing And Modifying Members

Lecture 57 Constructors And Initializing Objects

Lecture 58 "this" Keyword

Lecture 59 Pass by Reference, Pass By Value

Lecture 60 Static Fields, Class Variables, Instance Variables

Lecture 61 Static Methods or Class Methods

Lecture 62 Static Blocks

Lecture 63 Instance Initialize Blocks

Lecture 64 Constants And Final Fields

Lecture 65 Main Method In Detail

Section 10: JAVA PACKAGES

Lecture 66 Packages

Lecture 67 Importing Packages And Classes

Lecture 68 Creating User Defined Packages

Lecture 69 Static Import

Section 11: ENCAPSULATION

Lecture 70 Public And Default Access Modifiers

Lecture 71 Private Fields, Getters And Setters

Lecture 72 Private Methods

Section 12: INHERITANCE

Lecture 73 Inheritance, Super Classes And Sub Classes

Lecture 74 Inheritance Of Public Members

Lecture 75 Inheritance Of Private Members

Lecture 76 Inheritance Of Default Members

Lecture 77 Protected Access Modifiers And Inheritance

Lecture 78 Adding New Members To Sub Classes

Lecture 79 Method Overriding

Lecture 80 Super Keyword

Lecture 81 Inheritance And Constructors

Lecture 82 Final Classes, Final Methods, Final Parameters

Lecture 83 Types Of Inheritance And Rules

Section 13: POLYMORPHISM

Lecture 84 What is Polymorphism?

Lecture 85 "Is A" Relationship And instanceOf Operator

Lecture 86 Late Binding And Early Binding

Lecture 87 Polymorphic Sub Types

Lecture 88 Field Hiding And Method Hiding

Lecture 89 Upcasting And Downcasting

Lecture 90 Object Class

Section 14: ABSTRACTION

Lecture 91 What is Abstraction?

Lecture 92 Abstract Classes And Abstract Methods

Lecture 93 Extending Abstract Classes

Lecture 94 Adding Non-abstract Methods To Abstract Classes

Lecture 95 Static Members In Abstract Classes

Lecture 96 Abstract Classes And Polymorphism

Lecture 97 Interfaces And Defining A Java Interface

Lecture 98 Implementing Interfaces

Lecture 99 Default Methods

Lecture 100 Interface Static Methods

Lecture 101 Interface Fields

Lecture 102 Interface Private Methods

Lecture 103 Interfaces And Inheritance

Lecture 104 Interfaces Versus Abstract Classes

Section 15: COMPOSITION

Lecture 105 Composition And "Has A" Relationship

Section 16: NESTED CLASSES

Lecture 106 What is Nested Class?

Lecture 107 Inner Classes

Lecture 108 Shadowing

Lecture 109 Static Nested Classes

Lecture 110 Local Inner Classes

Lecture 111 Anonymous Classes

Section 17: ENUM TYPES

Lecture 112 Defining And Using An Enum Type

Lecture 113 Comparing Enum Types

Lecture 114 Enum Fields, Enum Constructors And Enum Methods

Lecture 115 Methods Of java.lang.Enum

Lecture 116 Inheritance And Enum Types

Section 18: JAVA String CLASS

Lecture 117 The String Class

Lecture 118 String Interning

Lecture 119 How And Why Are Strings Immutable?

Lecture 120 String Methods

Lecture 121 Escape Sequences

Lecture 122 StringBuilder And StringBuffer Classes

Section 19: WRAPPER CLASSES

Lecture 123 Wrapper Classes

Lecture 124 Wrapper Classes Internal Caching

Lecture 125 Immutability Of Wrapper Numeric Classes

Lecture 126 Autoboxing And Unboxing

Lecture 127 Wrapper Classes Methods

Lecture 128 NaN, Not A Numeric Number

Section 20: JAVA MATHEMATICS

Lecture 129 The Math And The StrictMath Classes

Lecture 130 Arithmetic Overflow

Lecture 131 Number Randomizing

Lecture 132 BigInteger Class

Lecture 133 BigDecimal Class

Lecture 134 BigDecimal Rounding With The MathContext

Section 21: JAVA DATE AND TIME

Lecture 135 LocalDate

Lecture 136 LocalTime

Lecture 137 LocalDateTime

Lecture 138 ZonedDateTime And OffsetDateTime

Lecture 139 Period And Duration

Lecture 140 Instant Class, Timestamp And Epoch

Section 22: FORMATTING

Lecture 141 Simple Decimal Formatting

Lecture 142 Localized Decimal Formatting

Lecture 143 Date And Time Formatting

Lecture 144 Custom Date Time Formatting

Lecture 145 String Formatting

Section 23: ARRAYS UTILITY CLASS

Lecture 146 Copying Arrays Using Arrays Class

Lecture 147 Filling Arrays Using Arrays Class

Lecture 148 Comparing Arrays Using Arrays Class

Lecture 149 Sorting Arrays And Searching In Arrays Using Arrays Class

Lecture 150 Sorting And Searching Arrays Of User Defined Types

Section 24: EXCEPTION HANDLING

Lecture 151 What is an Exception?

Lecture 152 Sample Exceptions

Lecture 153 Try Catch Blocks

Lecture 154 Multiple Catch Blocks

Lecture 155 Union Catch Blocks

Lecture 156 Finally Blocks

Lecture 157 Exception Hierarchy, Checked Exceptions, Unchecked Exceptions And Errors

Lecture 158 "throws" Keyword

Lecture 159 Throwing Exceptions Using Throw Statement

Lecture 160 The Throwable Class

Lecture 161 Creating Custom Exceptions

Section 25: GENERICS

Lecture 162 Why need Generics?

Lecture 163 Generic Type Invocation And Instantiation

Lecture 164 Raw Types

Lecture 165 Generic Interfaces

Lecture 166 Generic Methods

Lecture 167 Bounded Type Parameters

Lecture 168 Generic Inheritance

Lecture 169 Generics And Subtypes

Lecture 170 Upper Bounded Wildcards

Lecture 171 Unbounded Wildcards

Lecture 172 Lower Bounded Wildcards

Lecture 173 Wildcard Capture And Helper Methods

Lecture 174 Erasure Of Generic Types

Lecture 175 Erasure Of Generic Methods

Lecture 176 Type Erasure And Synthetic Bridge Methods

Lecture 177 Restrictions On Generics

Section 26: COLLECTIONS

Lecture 178 Collections Overview

Lecture 179 The List Interface

Lecture 180 The ArrayList Class

Lecture 181 ArrayList Internals And Capacity

Lecture 182 The LinkedList Class

Lecture 183 The Vector Class

Lecture 184 The Stack Class

Lecture 185 Sorting Lists Using The Comparator Interface

Lecture 186 Sorting Lists Using The Collections Class

Lecture 187 Sorting Lists Of Comparable Objects

Lecture 188 The Set Interface

Lecture 189 The HashSet Class

Lecture 190 The LinkedHashSet Class

Lecture 191 The TreeSet Class

Lecture 192 The Queue Interface

Lecture 193 The PriorityQueue Class

Lecture 194 The Deque Interface

Lecture 195 The ArrayDeque Class

Lecture 196 Iterators

Lecture 197 The ListIterator

Lecture 198 The Map Interface

Lecture 199 The HashMap Class

Lecture 200 The LinkedHashMap Class

Lecture 201 The TreeMap Class

Lecture 202 Iteration Over Maps

Lecture 203 Immutable Collections And Collection Factories

Section 27: CONCURRENCY

Lecture 204 Process And Thread Overview

Lecture 205 Creating Threads By Implementing The Runnable Interface

Lecture 206 Creating Threads By Extending The Thread Class

Lecture 207 Pausing Thread Execution With Sleep Method

Lecture 208 Interrupts And Handling The InterruptedException

Lecture 209 Interrupts And Interrupt Flag

Lecture 210 Thread Joins

Lecture 211 Thread Interference And Memory Inconsistency

Lecture 212 Intrinsic Locks And Synchronized Methods

Lecture 213 Intrinsic Locks And Synchronized Statements

Lecture 214 Fine Grained Synchronization

Lecture 215 "volatile" Keyword

Lecture 216 Inter-thread Communication

Lecture 217 Locks And The Lock Interface

Lecture 218 Deadlock

Lecture 219 Thread Starvation

Lecture 220 Livelock

Lecture 221 Atomic Access And Atomic Variables

Lecture 222 Thread Local Variables

Lecture 223 The Executors Framework And Thread Pools

Lecture 224 The ExecutorService Interface

Lecture 225 The ScheduledExecutorService

Lecture 226 Callable And Future

Lecture 227 Concurrent Collections And The BlockingQueue

Section 28: NEW FEATURES

Lecture 228 Lambda Expressions

Lecture 229 Functional Interfaces

Lecture 230 Method References

Lecture 231 The Optional Class

Lecture 232 Streams And Generating Streams

Lecture 233 Stream Methods

Lecture 234 Statistics With Stream

Lecture 235 Parallel Streams

Lecture 236 Stream Reduce

Section 29: INPUT OUTPUT (I/O)

Lecture 237 Files And Input/Output(I/O) Overview

Lecture 238 Reading Files With The FileInputStream

Lecture 239 Writing File With The FileOutputStream

Lecture 240 Reading Files With The FileReader

Lecture 241 Writing Files With The FileWriter

Lecture 242 Copying Files With Buffered Streams

Lecture 243 Random Access Files

Lecture 244 The File Class

Lecture 245 Reading Input From Keyboard With The Scanner

Section 30: SERIALIZATION

Lecture 246 Serialization, Deserialization And Transient Fields

Lecture 247 SerialVersionUID

Lecture 248 Externalization And The Externalizable Interface

Section 31: NETWORK PROGRAMMING

Lecture 249 Networking Overview

Lecture 250 Socket Programming, Client - Server Application

Lecture 251 The URL Class

Lecture 252 The URLConnection Class

Lecture 253 The InetAddress Class

Lecture 254 The DatagramSocket, The DatagramPacket And UDP

Section 32: JAVA NIO

Lecture 255 Java NIO Overview

Lecture 256 NIO Channels

Lecture 257 NIO Scatter

Lecture 258 NIO Gather

Lecture 259 NIO Selector

Lecture 260 NIO Pipe

Lecture 261 NIO Path

Lecture 262 NIO Files

Lecture 263 NIO Asynchronous File Channel

Lecture 264 NIO Completion Handler

Lecture 265 NIO File Lock

Section 33: JDBC - JAVA DATABASE CONNECTIVITY

Lecture 266 JDBC Overview

Lecture 267 Connecting To MySQL Server

Lecture 268 Statement And Execute Methods

Lecture 269 ResultSet And ExecuteQuery

Lecture 270 The PreparedStatement

Lecture 271 The CallableStatement

Section 34: GARBAGE COLLECTOR AND JAVA RUNTIME

Lecture 272 Garbage Collector Overview

Lecture 273 Java Runtime And Process Classes

Lecture 274 Non-Reference Objects

Lecture 275 Requesting For Garbage Collection And The Finalize Method

Section 35: REFLECTION

Lecture 276 Reflection Overview

Lecture 277 Accessing And Modifying Fields Using Reflection

Lecture 278 Accessing And Invoking Methods Using Reflection

Lecture 279 Creating A New Instance Using Reflection

Section 36: ANNOTATIONS

Lecture 280 Annotations

Lecture 281 User Defined Custom Annotations

Section 37: REGULAR EXPRESSIONS

Lecture 282 Regular Expressions

Lecture 283 Regular Expression Character Classes

Lecture 284 Regular Expression Quantifiers

Lecture 285 Regular Expression Predefined Character Classes

Complete Beginners. You will learn from definitions, fundamental programming concepts, basic applications to advanced topics.,Programmers who come from other languages.,Programmers who want to boost Object Oriented Programming skills.,Programmers who want to master advanced topics in Java like Network Programming, Java NIO, Collections, Concurrency.,Programmers who are preparing for Oracle Java Certification Exams