JAVA
-
Introduction
- What is an Object?
- What is a Class?
- Inheritance
- Encapsulation
- Polymorphism
Language Basics
- Primitive Types
- Arrays
- Operators
- Assignment, Arithmetic and Unary Operators
- Equality, Relational and Conditional Operators
- Bitwise and Shift Operators
- Control Flow Statements
- If-then, if-then-else statements
- While, do-while statements
- For statement
- Branching statements
- Switch statement
Classes and Objects
- Declaring Classes
- Declaring Member Variables
- Defining Methods
- Constructors
- Message passing
- Returning messages
- This keyword
- Initialization
- Nested Classes
- Enums
- Annotations
- Access Modifiers
Inheritance and Interfaces
- Defining Interface
- Implementing Interfaces
- Overriding
- Super Keyword
- Final Classes
- Abstract Classes
Numbers, Characters and Strings
- Number classes
- Formatting
- Manipulating Strings
- String Builder
Packages
- Creating Packages
- Naming a Package
- Package Members
- Importing classes
Generics
- Types
- Type Erasure
- Generic Methods and Constructors
- Bounded Types
- Sub typing
- Wildcards
- Type Erasure
Exception Handling
- What is an Exception?
- Try Block
- Try-catch Block
- Finally Block
- Throwing Exceptions
- Chaining Exceptions
- Checked/Unchecked Exceptions
- Creating Exception Classes
Basic I/O
- I/O Streams – Byte, Character, Buffered
- Scanning
- Formatting
- Data Streams
- Object Streams
- Readers and Writers
- Random Access File
- New I/O Classes
- Buffers
- Channels
Advanced Concepts
Concurrency- Processes and Threads
- Thread and Runnable
- Starting a Thread
- Pausing a thread
- Interrupts
- Joins
- Synchronization
- Intrinsic Locks
- Atomic Access
- Deadlock
- Live lock
- Lock Objects
- Executors
- Thread Pools
- Atomic Variables
- Concurrent Collections
Networking
- What is a Socket?
- TCP/IP and UDP
- Datagram
- Reading from a Socket
- Writing to a Socket
- Broadcasting
- Server Sockets
- Writing a client Server Application
- Working with URLs
- Network Interface Addresses
JDBC
- JDBC Architecture
- Relational Database Overview
- Setting up a Database (MySQL)
- Connecting to a Database
- Retrieving data from Result Sets
- Updating Tables
- Prepared Statements
- Joins
- Transactions
- Stored Procedures
- Building a complete JDBC Application
JNDI
- Overview of JNDI
- Looking up a Resource
- JNDI Context
- Add, Replace or Remove a Binding
Remote Method Invocation (RMI)
- Distributed Computing
- Remote Interface
- Serialization
- Implementing a Remote Interface
- Remote Client
- Security
- RMI Registry
Java Management Extensions (JMX)
- What is JMX?
- JMS Architecture
- Standard MBeans
- MXBeans
- Notifications
- JMX Connectors
Regular Expressions
- String Literals
- Character Classes
- Predefined classes
- Groups
- Boundary Matchers
- Pattern Class
Reflection
- Examining Class Objects
- Examining Class Modifiers
- Getting and Setting Field Values
- Obtaining Method Type Information
- Invoking Methods
- Retrieving and Parsing Constructors
- Creating New Class Instances
- Creating New Arrays
- Creating Enumerated Types
Swing
- What is Swing?
- Look and Feel
- Components, Panels, Windows, Buttons
- Action Listeners
- Layouts
- Graphics
- Integrating with Desktop