Overview of Core Java
One of the most popular programming languages, Java is a concurrent, class-based and object-oriented and is designed to have lesser execution dependencies. This Hands-on Corporate Training Program will give participants an experience of learning Core Java in depth.
Please find below the objective of the program:
- Internalize Object Oriented Programming concepts
- Internalize basic Java concepts
- Enables participants to code Java programs using operators, constructors, loops, functions, conditions, etc.
- Implement methods and encapsulation in Java
- Implement multi-threading, string handling, and exception handling techniques.
- Use JDBC connections
- Develop Java applications
Duration
4 Days
Prerequisite for Core Java
Basic programming knowledge is good to have but not mandatory for this training.
Course Outline for Core Java
Introduction
- Programming language Types and Paradigms.
- Computer Programming Hierarchy.
- How Computer Architecture Affects Language?
- Why Java?
- Flavors of Java.
- Java Designing Goal.
- Role of Java Programmer in Industry.
- Features of Java Language.
- JVM –The heart of Java
- Java’s Magic Bytecode
Language Fundamentals The Java Environment
- Installing Java.
- Java Program Development
- Java Source File Structure
- Compilation
- Executions.
Basic Language Elements
- Lexical Tokens, Identifiers
- Keywords, Literals, Comments
- Primitive Data types, Operators
- Assignments.
Object-Oriented Programming
- Class Fundamentals.
- Object & Object reference.
- Object Lifetime & Garbage Collection.
- Creating and Operating 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
- Use and Benefits of Inheritance in OOP
- Types of Inheritance in Java
- Inheriting Data Members and Methods
- Role of Constructors in inheritance
- Overriding Super Class Methods.
- Use of “super”.
- Polymorphism in inheritance.
- Type Compatibility and Conversion
- Implementing interfaces.
Package
- Organizing Classes and Interfaces in Packages.
- Package as Access Protection
- Defining Package.
- CLASSPATH Setting for Packages.
- Making JAR Files for Library Packages
- Import and Static Import
- Naming Convention For Packages
Exception Handling
- The Idea behind Exception
- Exceptions & Errors
- Types of Exception
- Control Flow In Exceptions
- JVM reaction to Exceptions
- Using try, catch, finally, throw, throws in Exception Handling.
- In-built and User-Defined Exceptions
- Checked and Un-Checked Exceptions
Array & String
- Defining an Array
- Initializing & Accessing Array
- Multi-Dimensional Array
- Operation on String
- Mutable & Immutable String
- Using Collection Bases Loop for String
- Tokenizing a String
- Creating Strings using StringBuffer
Thread
- Understanding Threads
- Needs of Multi-Threaded Programming.
- Thread Life-Cycle
- Thread Priorities
- Synchronizing Threads
- InterCommunication of Threads
- Critical Factor in Thread -DeadLock
Applet
- Applet & Application
- Applet Architecture.
- Parameters to Applet
- Embedding Applets in a Web page.
- Applet Security Policies
A Collection of Useful Classes
- Utility Methods for Arrays
- Observable and Observer Objects
- Date & Times
- Using Scanner
- Regular Expression
- Input/Output Operation in Java(java.io Package)
- Streams and the new I/O Capabilities
- Understanding Streams
- The Classes for Input and Output
- The Standard Streams
- Working with File Object
- File I/O Basics
- Reading and Writing to Files
- Buffer and Buffer Management
- Read/Write Operations with File Channel
- Serializing Objects
GUI Programming
- Designing Graphical User Interfaces in Java
- Components and Containers
- Basics of Components
- Using Containers
- Layout Managers
- AWT Components
- Adding a Menu to Window
- Extending GUI Features Using Swing Components
- Java Utilities (java.util Package)
- The Collection Framework :
- Collections of Objects
- Collection Types
- Sets
- Sequence
- Map
- Understanding Hashing
- Use of ArrayList & Vector
Event Handling
- Event-Driven Programming in Java
- Event- Handling Process
- Event-Handling Mechanism
- The Delegation Model of Event Handling
- Event Classes
- Event Sources
- Event Listeners
- Using Adapter Classes as Helper Classes in Event Handling
- Inner Class Shortcut to Event Handling
- Avoiding Deadlocks in GUI Code
- Event Types & Classes
- Networking Programming
- Networking Basics
- Client-Server Architecture
- Socket Overview
- Networking Classes and Interfaces
- Network Protocols
- Developing Networking Applications in Java
Database Programming using JDBC
- Introduction to JDBC
- JDBC Drivers & Architecture
- CURD operation Using JDBC
- Connecting to non-conventional Databases
Mail API
- Introduction to Email Technical Internals
- Understanding of POP and SMTP framework
- Complete understanding the email API
- Mass mailer Application development
- Introduction to J2EE
- J2EE Overview
- Why J2EE?
- J2EE Architecture
- J2EE APIs
- J2EE Containers