Advanced Java

You are here : Home / Courses / Advanced Java

Advanced Java training is aimed to sophisticate your core java skills, and takes you to the next level of Java programming. This is mostly meant for the developers who already know core java language and are planning to become an expert java developer.
This course sharpens your skills and prepares you for the real time project experience.

Note: Before you enroll to this course, please make sure you are very thorough in core java language.

Topics Covered
→ Java Collections Framework
→ Inner Classes
→ Socket Programming (Networking with Java)
→ Date, Calendars and Formatters API
→ Java Generics
→ Java Multi-threading
→ New IO (NIO)
→ Java Beans
→ Memory Management techniques
→ Design Patterns
→ Git Version Control

Price: $1500 CAD
Prerequisite: Core Java
Duration: 15 Weeks
Schedule:  To enroll to this course, Please send us an email to contact@sanrus.ca

1) Java Generics
  1. Introduction to parameterized types
  2. Bounded Types
  3. Wildcard Arguments
  4. Bounded Wildcards
  5. Generic classes, methods, constructors and interfaces
  6. Generics in Inheritance
2) Inner Classes
  1. Regular Inner class
  2. Static Inner class
  3. Anonymous Inner class
  4. Memory Leaks
3) Autoboxing and Wrapper classes
  1. Wrapper Classes
  2. Autoboxing/Unboxing primitive data
4) Annotations
  1. Introduction to Annotation
  2. Retention Policies
  3. Marker Annotations
  4. Type Annotations
  5. Repeating Annotations
5) Date, Calendars and Formatters
  1. Date API
  2. Calendar and Gregorian Calendar
  3. Locale, Timezone
  4. Date, Currency, Numbers and String formatters
6) Java Collections Framework
  1. Introduction to collections framework
  2. Arrays, Vector and Stack
  3. Enumerations
  4. Dictionary, HashTable and Properties
  5. Lists (ArrayList and LinkedList) and Iterators
  6. Sets (HashSet and TreeSet)
  7. Maps (HashMap, WeakHashMap and TreeMap)
  8. Sorting techniques
7) Java Multi-threading
  1. Thread and Runnable
  2. Implementing Thread Safety
  3. Synchronization and Deadlocks
  4. Explicit Locking mechanisms
  5. Sharing objects across threads
  6. usage of Threads in multiprocessors
  7. Executor Framework
  8. Thread pool
  9. Improving performance and scalability of multithreaded apps
8) Java Beans
  1. Software component basics
  2. Manipulating Bean properties
  3. Bean Events handling
  4. Persistence and Serializaing beans
9) Networking using Sockets
  1. TCP/IP fundamentals
  2. Java Sockets
10) New I/O (NIO)
11) Memory Management Techniques
12) Design Patterns
  1. Model-View-Controller (MVC)
  2. Singleton Pattern
  3. Factory and Provider pattern
  4. Builder Pattern
  5. Abstract Pattern
  6. Observer Pattern and using Java Beans for event notifications