Introduction to Java
Java is a programming language and a platform. Java is a high level, robust, object-oriented and secure programming language.
Java was developed by Sun Microsystems (which is now the subsidiary of Oracle) in the year 1995. James Gosling is known as the father of Java. Before Java, its name was Oak. Since Oak was already a registered company, so James Gosling and his team changed the Oak name to Java.
- Language Fundamentals or Grammar of Java
- Reserve / Keywords present in Java
- Primitive Data types and Block in java
- Java Operators
- Wrapper Class
- Decision making and branching PROGRAMMING WITH JAVA
- Decision making and looping
- Object Oriented Programming
- Extending Classes and Inheritance
- Exception Handling
- Array & String
- Dancing and Singing together “Multithreading “In Java
- Input/output Operation in Java (java.io Package)
- GUI Programming and Designing Graphical User Interfaces in Java
- Event Handling
- Networking Programming
- Database Programming using JDBC
- Types of Programming language and Paradigms.
- Java – what, where and why?
- Platform independency
- Comparison in Java with C and C++
- Role of Java Programmer in Industry.
- Java Evolution and History
- Features of Java Language.
- The Java Virtual Machine (JVM) – The heart of Java.
- Java’s Magic Byte code JDK , JRE and JIT
Language Fundamentals or Grammar of Java
- The Java Environment:
- Installing Java in WINDOWS and LINUX.
- Java Program Development in a different environment.
- Java Source File Structure
- Introduction to VI, notepad, edit plus editor and Net beans, Eclipse IDE.
- Compilation and Executions procedure using different editor and IDE.
- Reference parameters, Output parameters.
- Access specifiers and its requirements in java.
- Naming conventions
Reserve / Keywords present in Java
- Lexical Tokens, Identifiers
Primitive Data types and Block in java
- Data types
- int , char , float , double , Boolean , short , long , byte
- UNICODE system
- Value type, Reference type.
- Types and Scope of variables
- Static variables, Instance variable, Local variables, final variable, transient variable, volatile variable.
- Static block and Non-static block. Static,non-static,final,abstract, native and synchronized
- Communicate java application with other language using java native interface.
- Arithmetic operators,
- Relational operators,
- Logical operators,
- Shift operators
- Assignment Operators,
- Unary operator
- Bitwise operators,
- Special operators.
- Ternary operator
- Instanceof operator and typecasting.
- Type conversions
- Implicit conversion, Explicit conversion
Decision making and branching PROGRAMMING WITH JAVA
- If statement
- If….Else statement and if….else ladder.
- Nested if
- Multiple if
- Switch... case statement
- Conditional operator vs. if statement
- Break and continue in java
Decision making and looping
- Do For
- For each
Object Oriented Programming
- Class Fundamentals.
- Object & Object reference.
- Lifetime of object & Garbage Collection.
- Creating with Operating reference and Objects.
- Constructor & initialization code block.
- Access Control, Modifiers, methods
- Nested, Inner Class & Anonymous Classes
- Abstract Class & Interfaces
- Defining Methods, Argument Passing Mechanism
- Method Overloading, Recursion.
- Dealing with Static Members.
- Finalize () Method.
- Native Method.
- Use of “this“ reference.
- Use of Modifiers with Classes & Methods.
- Design of Accessors and Mutator Methods
- Cloning Objects, shallow and deep cloning
- Generic Class Types
Extending Classes and Inheritance
- Aggregation (HAS-A) and its uses.
- Use and Benefits of Inheritance (IS-A) over aggregation in OOP.
- Types of Inheritance in Java Role of Constructors in inheritance
- Polymorphism in OOP.
- Overriding SuperClass Methods.
- Use of “super” keyword.
- Restriction in case of method overriding.
- Type Compatibility and Conversion
- Implementing interfaces.
- Dynamic method dispatching by down-casting and up-casting.
- Organizing Classes and Interfaces in Packages.
- Package as Access Protection
- Defining Package.
- Advantage of package
- CLASSPATH Setting for Packages.
- Making JAR Files for Library Packages
- Import and Static Import Creating .EXE and jar executable file
- The Idea behind Exception
- Exceptions & Errors
- Types of Exception
- Checked and Un-Checked Exceptions
- Control Flow in Exceptions
- Use of try and catch block
- Multiple catch block
- Nested try
- finally block
- throw keyword
- Exception Propagation
- throws keyword
- Exception Handling with Method Overriding
- In-built and User Defined Exceptions
- Exception handling rule in case of method overriding.
- How to handle unreachable statements using finally
Array & String
- Defining an Array
- Single–Dimensional Array
- Initializing & Accessing Array
- Multi –Dimensional Array
- Jagged Array
- Arrays class
- Methods in Arrays class
- Sorting the elements of Array
- Searching, insert, delete dynamically.
- Matrix multiplication, addition, transpose, upper triangular, lower triangular, sparse matrix.
- String – what and why
- Operation on String
- Immutable String
- String comparison and concatenation
- Method of String class
- StringBuffer class and its methods.
- StringBuilder class in java.
- Creating Immutable class like String.
- Using Collection Bases Loop for String
- Tokenizing a String
- Object comparisons using Comparator and comparable interface
Dancing and Singing together “Multithreading “In Java
- Understanding Threads and Processes.
- Multithreading – what and why
- Creating Thread
- Thread Life-Cycle
- BufferedReader and BufferedWriter class.
- Compressing and Decompressing File.
- Reading and Writing data simultaneously
- DataInputStream and DataOutputStream
- The Standard Streams
- Working with File Object
- Java & XML Data Binding
GUI Programming and Designing Graphical User Interfaces in Java
- Components and Containers
- Basics of Components
- Using Containers
- Layout Managers and user defined layout.
- BorderLayout , FlowLayout , GridLayout , GridbagLayout, BoxLayout.
- AWT Components
- Adding a Menu to Window
- Extending GUI Features Using SWING Components
- Designing GUI using Netbeans.
- Advanced swing components like JProgressbar , JSlider, JRadioButton , JTree, JTable, JToggleButton, etc.
Java Data Structure by the help of java.util Package.:
- Collections of Objects
- Stack Queue & Deque
- Use of HashSet & TreeSet
- Understanding Hashing
- Use of ArrayList & Vector
- Use of LinkedList.
- Use of HashMap & TreeMap
- LinkedHashMap class
- Hashtable class Generics
- Event-Driven Programming in Java
- Event- Handling Process with AWT.
- Working with Listeners
- Event-Handling Mechanism with SWING.
- Event Classes and its methods.
- Adapter Classes as Helper Classes in Event Handling
- Applet with Event-Handling.
- Process and Networking Basics
- Client-Server Architecture.
- InetAddress class
- Communicate between two processes in single or different system.
- Two way communication
- Socket Overview
- Networking Classes and Interfaces
- Network Protocols
- Read and write operation between client and server.
- PrintWriter and BufferedReader class for read and write operation.
- Developing Networking Applications in Java
- Developing a chatting application.
Database Programming using JDBC
- Introduction to JDBC
- Steps to connect to the database
- JDBC Drivers & Architecture
- Types of JDBC Drivers.
- Connectivity with Oracle
- Connectivity with MySQL