Java for Absolute Beginners Online Course
Java for Absolute Beginners Online Course
This course introduces you to the power and scalability of Java, one of the most widely used programming languages with abundant career opportunities. You’ll start by learning core OOP concepts like inheritance and polymorphism, along with essential Java keywords, operators, loops, and expressions. The course covers setting up coding tools, code refactoring, and using Java packages effectively. You’ll also explore multithreading, debugging techniques such as stack traces and breakpoints, log analysis, and testing with JUnit. Finally, you’ll gain insight into Java design patterns, equipping you with practical skills to build robust applications.
Who should take this course?
This course is ideal for complete beginners with no prior programming experience who want to start their coding journey with Java. It’s also great for students, aspiring developers, and anyone looking to build a strong foundation in programming basics.
What you will learn
- Learn all about Object-Oriented Programming (OOP)
- Learn how to debug the Java program
- Learn how to use JUnit to test
- Learn how to use design pattern practices
- Explore the various types of authenticators
- Learn how to perform code refactoring
Course Outline
Java 11 Introduction and OOPS Concepts
- Learning Objectives
- Introduction
- Working of Java Program
- Object-Oriented Programming
- Install and Work with Eclipse
- Basic Elements of Java
- Unicode Characters
- Variables
- Data Types
- Operators
- Logical Operator
- Operators Precedence
- Type Casting – Type Conversion
- Conditional Statements
- Nested-if
- Loops
- 'For' Versus 'While' Versus 'Do While'
- Access Specifiers
- Java 11
- 'NULL', 'this' and 'instanceof' Operators
- Destructors
- Code Refactoring
- Garbage Collector
- Static Code Analysis
- String
- Arrays – Part 1
- Arrays – Part 2
- 'for each' Loop
- Method Overloading
- Command-Line Arguments
- Parameter Passing Techniques
- Types of Parameters
- Variable Arguments
- Initializer
- Demo – Basic Java Program
- Demo – Displaying Content
- Demo – Quiz Program
- Demo – String Functions Program
- Demo – Student Record Program
- Summary
Utility Packages and Inheritance
- Learning Objective
- Packages in Java
- Demo – Utility Package
- Inheritance in Java
- Demo – Bank Account Statement Using Inheritance
- Object Type Casting
- Method Overriding
- Demo – House Architecture using Polymorphism
- Lambda Expression
- Static Variable and Methods
- Abstract Classes
- Interface in Java
- Java Set Interface
- Marker Interface
- Inner Class
- Exception Handling in Java
- Demo – Exception Handling
- Memory Management
- Summary
Multithreading Concepts
- Learning Objective
- Multithreading
- Introduction to Threads
- Threads Lifecycle
- Thread Priority
- Daemon Thread
- Thread Scheduling and Sleeping
- Thread Synchronization
- Wrapper Classes
- Autoboxing and Unboxing
- 'java util' and 'java lang' Classes
- javalang – String Class
- javautil – StringBuilder and StringTokenizer Classes
- javalang – Math Class
- javautil – Locale Class
- Java Generics
- Collections Frameworks
- Set Interface in Collections
- Hashcode() in Collections
- List in Collections
- Queues in Collections
- Comparator Interface in Collections
- Deque in Collections
- Map in Collections
- 'for each' method
- Difference: Collections and Array Class
- Input Output Stream
- Java.io.File Class
- Byte Stream Hierarchy
- CharacterStream Classes
- Serialization
- JUnit
- Logger – Log4j
- Demo – Sorting Student Registration Using Arrays
- Demo – Stack, Queue, and Linked List
- Demo – Multithreading
- Summary
Debugging Concepts
- Learning Objective
- Debugging Techniques
- Tracing and Logging Analysis
- Log Levels and Log Analysis
- Stack Trace
- Logging using Log4j
- Best practices of Log4j – Part 1
- Best Practices of Log4j – Part 2
- Log4j Levels
- Eclipse Debugging
- Setting Breakpoints
- Stepping Through or Variable Inspection
- Demo – Analysis of Reports with Logging
- Summary
JUnit
- Learning Objective
- Introduction
- Unit Testing
- JUnit Test Framework
- JUnit Test Framework - Annotation
- JUnit Test Framework – Assert Class
- JUnit Test Framework – Test Suite
- JUnit Test Framework – Exceptions Test
- Demo – Generating Report using JUnit
- Demo – testing Student Mark System using JUnit
- Summary
Java Cryptographic Extensions
- Learning Objective
- Cryptography
- Types of Authenticators
- CHACHA20 Stream Cipher and Poly1305 Authenticator
- Example Program
- Demo – Cryptographic Program
- Summary
Design Patterns
- Learning Objective
- Introduction to Design Patterns
- Types of Design Patterns
- Creational Patterns
- Factory Method Pattern
- Demo – Creating a Family of Objects Using the Factory Design Pattern
- Singleton Design Pattern
- Builder Pattern
- Structural Pattern
- Adapter Pattern
- Bridge Pattern
- Facade Pattern
- Flyweight Design Pattern
- Behavioral Design Pattern
- Demo – Loan Approval Process Using Behavioral Design Pattern
- Chain of Responsibility Pattern
- Command Design Pattern
- Interpreter Design Pattern
- Iterator Design Pattern
- Mediator Design Pattern
- Memento Design Pattern
- NULL Object Design
- Observer Design Pattern
- State Design Pattern
- Demo – State Design Pattern
- Strategy Design Pattern
- Template Design Pattern
- Visitor Design Pattern
- JEE or J2EE Design Patterns
- Summary
No reviews yet. Be the first to review!