About The Course
Edureka's Advanced Java Course is designed for professionals who want to fastrack their growth as Java Developers. This course enables participants to learn advanced Java concepts such as memory leaks, use of Generics, concurrency, network programming, try-with-resource blocks, design patterns (loose coupling and high cohesion) and more using production like code. People undergoing this course would find it easier to progress their career into more advanced topics such as Big Data and Enterprise Applications.
After the completion of 'Advanced Java Course' at Edureka, you should be able to:
1. Learn Java Annotations
2. Learn Internationalization with resource bundles
3. Understand Logging messages with Apache Log4j
4. Write multi threaded server and clients
5. Parse XML files using DOM and SAX parser
6. Write network applications using java.net package
7. Look up in haystack with Java regex API
8. Write code with Java 7 features like try-with-resource block.
9. Use generics which are heavily used in all Java based frameworks
10. Understand the use of JDBC for parameterized queries, batch processing and transaction management
11. Use Design Patterns while writing an application
12. Writing test cases with JUnit 4
Who should go for this course?
This course is designed for professionals aspiring to become Java Developers, Programmers, Web Developers, Web Designers, Programming Hobbyists, Database Administrators, and Youngsters who want to kick start their career are the key beneficiaries of this course.
Pre-requisites for this course are prior programming experience and be familiar with basic concepts such as variables/scopes, flow-control, and functions. Prior exposure to object-oriented programming concepts is not required, but definitely beneficial.
Towards the end of the Course, you will be working on a live project. The project is from Human Resource Business Application domain.
Project Title: Employee Attendance Tracker via Employee Access Cards
Project Description: Even though most organisations have moved to flexible timing approach, they still need to track employee attendance. Automating this process eases management of leaves and remuneration of employees.
Why Learn Advanced Java?
Working on the latest version of the software has its advantages as one is always up to date with the language features. This helps in solving problems in design and coding much faster. Further, in this knowledge industry where the rate of obsolescence of technology is so fast, it is always advantageous to remain up to date.
1. Java Basics
Learning Objectives - In this module you will learn about Variables, Operators, Java Wrapper Classes over Primitive Types, Expressions, Statements, Blocks and Control Flow Statements.
Topics - Variables: Primitive Data Types and Arrays, Operators: Arithmetic, Unary, Relational, Conditional, Bitwise and Bit Shift, Java Wrapper Classes over Primitive Types (String, Integer, Float, etc.), Expressions, Statements and Blocks, Control Flow Statements: if, if-else, switch statements, while loops, do-while loops, for loops (including for each loop introduced in JDK 1.5), branching statements.
2. Anatomy of a Class & Interface, Annotations
Learning Objectives - In this module you will learn about Data Hiding, Abstraction, Inheritance and Encapsulation, Constructors, Class Methods and Access Specifiers, Life Cycle of an Object, Types of Classes, Types of Methods, Interfaces and When to Use Them, Enum Types, Packages, Java Annotation.
Topics - Data Hiding, Abstraction, Inheritance and Encapsulation, Constructors, Class Methods and Access Specifiers, Life Cycle of an Object, Types of Classes: Abstract, Final, Types of Nested & General Classes, Types of Methods: Abstract, Final, Static, Instance Method, Interfaces and When to Use Them, Enum Types, Packages, Java Annotations.
3. Polymorphism, Event Handling, Internationalization
Learning Objectives - In this module you will learn about Polymorphism in Java, User Defined Event Handling, Handling Internationalization.
Topics - Polymorphism in Java, Designing call-back methods for event handling, Handling Internationalization, Handling Internationalization with Resource Bundles.
4. Exceptions, Apache Log4j, Regular Expressions
Learning Objectives - In this module you will learn about Exception Handling, Logging in Java, Regular Expressions.
Topics - Exception handling with try-catch-finally constructs, Implementation of custom Exception class, Using Apache Log4j for logging services, Regular expressions using javax.util.regex.
5. Collections & Generics
Learning Objectives - In this module you will learn about Classic Data Structures, Sequential Collections, Associative Collections, Sort & Search Algorithms, Generics.
Topics - Classic Data Structures, Sequential Collections, Associative Collections, Sort & Search Algorithms, Generic Classes, Generic Methods, Bounded Type Method Parameters, Wildcards, How generics behave?
6. Working with Files
Learning Objectives - In this module you will learn about File Handling in Java (Text, Binary & XML files), Serialization.
Topics - The structure of the I/O Package, Handling text files, Handling binary files, Object persistence with serialization, Introduction to XML, DOM and SAX models: When to use what, Parsing XML with DOM & SAX.
Learning Objectives - In this module you will learn about Concurrency and the constructs of concurrent programmes, Implementing a Multithreaded Java program, Synchronizing threads, Critical Section and its protection with locks.
Topics - Introduction to Concurrency and the constructs of concurrent programs, Implementing a Multithreaded Java program, Synchronizing threads, Critical Section and its protection with locks.
8. Working with Databases
Learning Objectives - In this module you will learn how to use JDBC for DDL, DML and TCL and write your own stored procedures.
Topics - How to connect to databases from Java code? CRUD operations, How to run parameterized stored procedures?, Transaction Management, Batch Processing.
9. Network Programming
Learning Objectives - In this module you will learn basics of networking, Writing own TCP/IP server and client, Writing own UDP server and client, URL handling (Download example).
Topics - How It All Started – BSD Sockets, Networking Basics, Understanding java.net, Network Interfaces, Reliable Communication through TCP Sockets, Unicast through Datagram Sockets, Multicast through Multicast Sockets, URL Processing.
10. Making Code Robust
Learning Objectives - In this module you will learn how to handle memory leak, through Design Pattern we teach loose coupling and high cohesion in designing.
Topics - Managing Java Programme Memory, Unit Testing with JUNIT4, Basic “Gang of Four” Design Patterns – Abstract Factory, Factory Method, Observer, Strategy, Singleton, Adapter & State, Project Discussion.