Building Closure
The Silicon Valley Campus will be closed Sunday, Jan. 19 for maintenance and Monday, Jan. 20 in honor of Martin Luther King, Jr. See you Tuesday!
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.
Learning Outcomes
At the conclusion of the course, you should be able to
- Describe the core features and syntax of Java language
- Develop Java applications that correctly apply the principles of object oriented design
- Use Java class libraries
- Apply generic, multi-threaded, network, database and GUI programming techniques using java
- Understand functional programming using lambda expressions
- Demonstrate proficiency in utilizing AI tools to enhance learning, improve code and debug programs
Topics Include
- Object-Oriented concepts * 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
- Arrays and Strings * Creating arrays, multidimensional arrays, strings, StringBuilder class, primitive wrapper classes
- Interfaces, Nested 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
- Input/output programming * Reading and writing text and binary files, random file access, serializations
- Exception handling * Try and catch blocks, exception class, creating custom exception classes, multiple catch blocks, run-time exceptions, the finally block
- Multithreaded programming * The Thread class, interface runnable, creating threads, interrupting threads, thread synchronization, problems with threads
- Collections framework * Generics, interfaces set, map and list and their implementations, iterators, set operations, wildcards, comparable and comparator interfaces
- JDBC * JDBC API with driver managers, result sets, cached row sets, prepared statements
- Functional programming * Functional interfaces, lambda expressions, streams
- AI-Enhanced Development * Introduction to AI-powered coding tools for code improvement, debugging and optimization
Skills Needed:
"Java Programming I" is recommended for those new to Java. Experience in a programming language such as C or C++ may also help with learning Java.
- Save Your Seat
Help us confirm course scheduling. Enroll at least seven days before your course starts. - Accessing Canvas
Learn more about gaining access to your course on Canvas in our FAQ section. -
Accessibility and Accommodation
For accessibility questions or to request an accommodation, please visit Access for Students with Disabilities or email the Extension registrar. -
Finance Your Education
Here are ways to pay for your education.
Prerequisite(s):
Estimated Cost: TBD
Course Availability Notification
Please use this form to be notified when this course is open for enrollment.