DURATION: 3 Days
Objectives:
This course provides thorough coverage of the Core Java topics.
- Recap Java Core Concepts and Java Collection Framework.
- Understand Java Generics and Annotations.
- Understand Java IO concepts and NIO overview.
- Understand concurrency concepts.
Note: Java 11 and Eclipse latest version will be used as development environment.
Audience
This course is for people who wanted to learn core Java concepts and new features.
Java SE level programming proficiency or completion of an introductory Java course.
Hardware & Network Requirements:
- All participants to have individual desktops/laptops with 8GB RAM.
- High-speed internet connection.
Software Requirements:
- Windows 64 Bit or Linux Ubuntu or Mac.
- JDK 11, Eclipse latest version.
Day 1
Module 1: Recap Core Java
- Recap Java Language Basics.
- OOPs concepts.
- Packages, Strings and Arrays.
- JVM Architecture.
- Memory Management.
- Garbage Collection.
Module 2: Module 2: Collection Framework
- Java Collection Framework Overview.
- Collection Data Structures.
- List – Vector, ArrayList, LinkedList
- Set – HashSet, LinkedHashSet, TreeSet
- Map – Hashtable, HashMap, LinkedHashMap, TreeMap
- Queue and Deque
- Iterator and ListIterator.
- Working with Collections.
- Utility functions in Collections.
Day 2
Module 3: Generics
- Generics Overview.
- Parameterized arguments and usage of wild cards.
- Using class / interface level, Constructor level, Method Generic type declaration and accessing them.
- Applying Generics on Collection Framework.
Module 4: Annotations
- Types of Annotations – Single, Normal, Marker
- Specifying Targets – CLASS, METHOD, etc.
- Specifying Retention Policy – SOURCE, CLASS, RUNTIME.
- Understanding pre-defined annotations and Annotation Processing.
Module 5: Exception Handling
- What is Exception.
- Types of Exception.
- Exception Hierarchy.
- Exception handling with try catch, throws, try with resources, custom exception.
Day 3
Module 6: Java IO and Serialization
- I/O Stream Hierarchy.
- CharacterStream vs ByteStream.
- Read and Write with Console.
- File Management – Read, Write, Browse.
- Serialization Overview.
- ObjectInputStream and ObjectOutputStream.
Module 7: Multi-threading / Concurrency Overview
- Process vs Threads.
- Thread Lifecycle.
- Thread creation and execution.
- Thread Constructs – wait, notify, notifyall, interrupt, sleep, join, volatile, yield.
- Thread Priority.
- Daemon threads.
- Thread Groups.
- Thread Synchronization.
- Working with concurrent collections – Blocking and non-blocking operations.