-
Code structure:
- Java executable class.
- Variables: Scope, kinds and types (Primitives and Non-primitive).
- Class structure: methods, variable, nested types, init blocks.
- Arrays
- Package & classes.
- Memory: Heap & stack, garbage collection, static VS non-static.
-
Control flow:
- Conditions: if, if-else, if-else-if-else and ternary statement.
- Loops: while-do, do-while, for(C-style), foreach.
- Switch: case-break & fall-through.
- Recursion VS loop.
-
Object Oriented Programming:
- Inheritance
- Encapsulation
- Polymorphism
- Abstraction
- Composition
- Loose coupling
- High cohesion
-
Collections:
- Generics Generics
- Collection interface and its common sub-classes:
ArrayList
,LinkedList
,HashSet
,TreeSe
t,HashMap
,TreeMap
- Common conversions
-
String manipulations:
- Understanding
java.lang.String
class - Understanding
java.lang.StringBuilder
class - Understanding
java.lang.StringBuffe
r class
- Understanding
-
Regular Expressions
- Quantifiers, predefined meta chars, patterns and symbols, capturing ,looks (positive & negative, ahead & behind)
- Common usage: match, split, replace
-
Exception handling:
Throwable
tree - hierarchyError
VSException
- Checked VS Unchecked Exceptions
try
blocks: try-catch, try-finally, try-catch-finally, multiple-catch, try with resources- Rethrowing concept
- Custom Exception
-
Multi threading:
- Concurrency VS parallelism
- Process & thread
java.lang.Runnable
&java.lang.Thread
- Thread handling
-
Enumeration:
- Enum type structure: instances, constructors, methods & properties
- Singleton implementation
- State machine
- Abstraction & Polymorphism: Interface implementation and nested methods delegation
-
Working with files
- Understanding
java.io.File
class - Working with streams (Input & Output)
Files.ReadAllBytes
VSFileInputStream
VSBufferedReader
- Understanding
-
Working with XML
- Understanding
javax.xml
andand org.w3c.dom
packages and their classes - Reading, writing and manipulating XML documents
- Load XML from remote server
- Understanding
-
Working with JSON
- Understanding
org.json
- Reading, writing and manipulating JSON documents
- Load JSON from remote server
- Understanding
-
Networking
- HTTP client
- HTTP server
-
Java DataBase Connection (JDBC) with MySQL
- Establishing connection
- How to work with prepared statements
- Basic CRUD Operations
- Joins & Unions