This course is for anyone who is looking to make their career into Java development or Testing (Selenium) or Dataware housing (Big Data Hadoop) or Mobile app development etc. as Core Java is the base for all the trending new products in any sector.
Also, this course will be helpful for the corporates who are looking for doing certifications.
Candidates should have basic knowledge of Computer, Internet, Any programming language like C, C++ would be added advantage.
The course content is as follows :
An Introduction to Java
Java as Programming Tool
Advantages of Java
Java Buzzword
Short History of java
Java Features
Java and the Internet
Java Programming Environment
Installing the Java Software
JDK and JRE
Whats JVM?
How Garbage Collector works
Compiling and Running a simple program
Discussing the structure of Java Program
How to use command line arguments
Some basic constructs in java
Fundamental Programming Structure
Comments
Identifiers
Data Types
Variables
Assignments and Initializations
Operators
o Arithmetic
o Bitwise
o Logical
o Relational
o Ternary
o Assignment
o Shift
o Increment/Decrement
Control Flow
o If
o If-else
o Switch
o For loop
o While loop
o Do-while loop
Objects and Classes
What is OOPs
What are classes
Structure of classes
How objects look internally
Constructors vs Methods
Building your class
Class design hints
Using 'this' keyword
Inheritance
Types of Inheritance
o Single level
o Multi level
o Multiple
o Hierarchical
Why Interfaces
Polymorphism
o Compile time Polymorphism
o Runtime Polymorphism
Multiple inheritances - interfaces
What is a Marker interface?
Overloading vs Overriding
Using 'super' keyword
Constructor calling the super constructor
Some More Java Keywords
Access specifiers
o Public
o Private
o Protected
o Default scope (package)
Non-access modifiers
o Static
o Final
o Abstract
Labelled 'break' and 'continue.'
'instanceof' keyword
Arrays
What are arrays
Single and Multi-dimensional arrays
How arrays in Java are different
How to construct arrays in Java
Arrays of primitives
Arrays of objects
Packages
What are packages?
Some inbuilt packages
Importing packages
Constructing our package
Getting classes and packages in classpath
Best Practices
The Basic coding conventions
The CamelCase (Hungarian) notation
When to use constructors for coding
What is init block used for
When the static block gets executed
How to code efficiently
What is a well-encapsulated class
Path and Classpath settings
Exception Handling
What are exceptions?
Why handle exceptions?
How to handle exceptions?
o Try
o Catch
o Finally
Manually raising an exception
o Throw
Passing the exception
o Throws
Checked vs Unchecked exceptions
Custom or User-Defined Exceptions
Error vs Exception
About Throwable
The Default Exception handler
Multithreading
Why multithreading?
When to do multithreaded programming?
Process-based vs Thread-based execution
The life cycle of a thread
State of a thread
o Initial
o Runnable
o Running
o Blocked
o Dead
Extending Thread class
Implementing Runnable interface
Setting and getting the Priority for threads
About Thread groups
Synchronization
'wait()' and 'notify()' methods
Avoiding thread Deadlocks
Deamon threads
Some other useful methods
o join()
o currentThread()
o isAlive()
o suspend()
o resume()
o setPriority()
o yield() etc
java.lang package
The Default Package
Some basic classes
String vs StringBuffer
StringBuffer & StringBuilder
Wrapper classes
Working with class 'Class.'
Cloneable interface
The Object class
o hashCode()
o finalize()
o clone()
o equals()
o toString()
java.util package
Legacy classes
Some basic classes
o Date
o BitSet
o StringTokenizer
o Stack etc.
Collection Framework classes
The Collection interface
The Collections class
Set
o HashSet
o TreeSet
o LinkedHashSet
List
o Vector
o LinkedList
o ArrayList
Map
o HashMap
o Hashtable
o TreeMap
o LinkedHashMap
Enumeration vs Iterator
Why Generics
Generics with collection objects
Using Comparable and Comparator