Build powerful Java apps using OOP, collections, JDBC, and AI-enhanced development.
Course Description
Java is the premier development language for web servers, enterprise servers, network applications, embedded devices, appliances and wireless applications.
This course, which covers Java 21+, teaches students to apply object-oriented concepts, design and develop Java applications, and use Java libraries. You’ll learn to write, maintain and debug applications, and make effective use of standard packages. You’ll also learn key design concepts and implementation skills needed for professional Java programming. Additionally, you'll explore leveraging AI tools to enhance coding efficiency and debugging.
Topics
- Object-Oriented concepts
- Arrays and Strings
- Interfaces, Nested classes
- Input/output programming
- Exception handling
- Multithreaded programming
- Collections framework
- JDBC
- Functional programming
- AI-Enhanced Development
* Defining classes and methods, constructors, access modifiers, inheritance, overriding, overloading, polymorphism, constructor chaining, super keyword, abstract classes, static fields and methods, final keyword, MVC design pattern
* Creating arrays, multidimensional arrays, strings, StringBuilder class, primitive wrapper classes
* Creating interfaces, difference between interfaces and nested classes, predefined interfaces, nested interfaces, static nested classes, inner classes, anonymous classes, records, sealed classes and interfaces, pattern matching for instance
* Reading and writing text and binary files, random file access, serializations
* Try and catch blocks, exception class, creating custom exception classes, multiple catch blocks, run-time exceptions, the finally block
* The Thread class, interface runnable, creating threads, interrupting threads, thread synchronization, problems with threads
* Generics, interfaces set, map and list and their implementations, iterators, set operations, wildcards, comparable and comparator interfaces
* JDBC API with driver managers, result sets, cached row sets, prepared statements
* Functional interfaces, lambda expressions, streams
* Introduction to AI-powered coding tools for code improvement, debugging and optimization
Prerequisites / Skills Needed
Foundational programming experience in Java or a language such as C or C++.
