In this online Java Programmer course, you will learn about Java syntax elements, concentrating on fundamental and universally useful elements while also gaining an understanding of its more advanced elements.
Requirements:
Hardware Requirements:
- This course can be taken on a PC or a Mac.
- Dual monitors are helpful but not required.
Software Requirements:
- PC: Windows 10 or later.
- Mac: macOS 11.0 or later.
- Browser: The latest version of Google Chrome or Mozilla Firefox are preferred. Microsoft Edge and Safari are also compatible.
- Java (download and installation instructions are provided in course).
- Visual Studio Code (download and installation instructions are provided in course).
- Adobe Acrobat Reader.
Other:
- Email capabilities and access to a personal email account.
Instructional Material Requirements:
The instructional materials required for this course are included in enrollment and will be available online.
If you're ready to learn Java, this training course is the perfect place to start. Taking an introductory approach, this Java training course covers most Java syntax elements, concentrating on fundamental and universally useful elements, while providing an overview of many more advanced elements. You will learn to write useful Java classes, applying Object-Oriented concepts such as inheritance, and create Java programs that work with these classes. Early in the course, the concept of objects is introduced so that later concepts can be discussed from the perspective of object orientation.
This course prepares you for entry into the job market as an entry-level Java programmer or allows you to continue your education by learning other programming languages. This course is entirely online and is completed at your own pace.
- Java Introduction
- Conventions in These Notes
- The Java Environment - Overview
- Writing a Java Program
- Obtaining The Java Environment
- Setting Up Your Java Environment
- Creating a Class that Can Run as a Program
- Useful Stuff Necessary to Go Further
- Using an Integrated Development Environment
- Running a Simple Java Program
- Using the Java Documentation
- Java Basics
- Basic Java Syntax
- Variables
- Data
- Constants and the final Keyword
- Mathematics in Java
- Creating and Using Methods
- Variable Scope
- Method Exercise
- Java Objects
- Objects
- Object-oriented Languages
- Object Definition
- References
- Defining a Class
- More on Access Terms
- Adding Data Members to a Class
- Standard Practices for Fields and Methods
- Java Beans
- Bean Properties
- Constructors
- Instantiating Objects Revisited
- Important Note on Constructors
- Method Overloading
- The this Keyword
- Using this to Call Another Constructor
- static Elements
- The main Method
- Garbage Collection
- Java Packages
- Compiling with Packages
- Working with Packages
- Variable Argument Lists (varargs)
- Creating Documentation Comments and Using Javadoc
- Primitives and Wrapper Classes
- Java Objects
- Compiling and Executing with Packages
- String, String Buffer, and StringBuilder
- Encapsulation
- Object-oriented Programs
- Mid-term exam
- Comparisons and Flow Control Structures
- Boolean-valued Expressions
- Comparison Operators
- Comparing Objects
- Conditional Expression Examples
- Complex Boolean Expressions
- Simple Branching
- The if Statement
- if Statement Examples
- Two Mutually Exclusive Branches
- Comparing a Number of Mutually Exclusive Options - The switch Statement
- Comparing Two Objects
- Conditional Expression
- Additional Loop Control: break and continue
- Continuing a Loop
- Classpath, Code Libraries, and Jar Files
- Creating and Using an External Library
- Compiling to a Different Directory
- Arrays
- Defining and Declaring Arrays
- Instantiating Arrays
- Initializing Arrays
- Working with Arrays
- Enhanced for Loops - the For-Each Loop
- Array Variables
- Copying Arrays
- Using the args Array
- Arrays of Objects
- Multi-Dimensional Arrays
- Multidimensional Arrays in Memory
- Example - Printing a Picture
- Typecasting with Arrays of Primitives
- Inheritance
- Inheritance
- Payroll with Inheritance
- Polymorphism
- Creating a Subclass
- Inheritance and Access
- Inheritance and Constructors - the super Keyword
- Inheritance and Default Superclass Constructors
- Typecasting with Object References
- More on Overriding
- Other Inheritance-related Keywords
- Methods Inherited from Object
- Checking an Object's Type: Using instanceof
- The Instantiation Process at Runtime
- Derived Class Objects
- Derived Class Methods that Override Base Class Methods
- Object Typecasting Example
- Typecasting with Arrays of Objects
- Interfaces
- Interfaces
- Creating an Interface Definition
- Implementing Interfaces
- Reference Variables and Interfaces
- Interfaces and Inheritance
- Some Uses for Interfaces
- Annotations
- Using Annotations
- Interfaces
- Annotation Details
- Exceptions
- Exceptions
- Handling Exceptions
- Exception Objects
- Attempting Risky Code - try and catch
- Guaranteeing Execution of Code - The finally Block
- Letting an Exception be Thrown to the Method Caller
- Throwing an Exception
- Exceptions and Inheritance
- Creating and Using Your Own Exception Classes
- Rethrowing Exceptions
- Initializer Blocks
- Logging
- Log Properties
- Assertions
- Collections
- Collections
- Using the Collection Classes
- Using the Iterator Interface
- Creating Collectible Classes
- Generics
- Bounded Types
- Extending Generic Classes and Implementing Generic Interfaces
- Generic Methods
- Variations on Generics - Wildcards
- Type Erasure
- Multiple-bounded Type Parameters
- Working with Streams and Lambda expressions
- Inner Classes
- Inner Classes, aka Nested Classes
- Inner Class Syntax
- Instantiating an Inner Class Instance from within the Enclosing Class
- Inner Classes Referenced from Outside the Enclosing Class
- Referencing the Outer Class Instance from the Inner Class Code
- Better Practices for Working with Inner Classes
- Enums
- Method Inner Classes
- Anonymous Inner Classes
- Final Exam
- Final Project: Hotel Reservations Case Study
What you will learn
- Understand the "write once, run anywhere" concept
- Understand and learn how to create basic Java objects
- Learn how to implement flow-control concepts in Java
- Understand Java's package concept and create packages of Java classes
- Understand Java arrays and write code to create and use arrays
- Learn how to write Java classes using inheritance
- Understand and use the concept of polymorphism in an application
- Understand how Java's exception-handling mechanism works and learn how to apply exception-handling to Java applications
- Learn how to use elements from the Java API library, including the Collections classes
How you will benefit
- Prepare yourself for an entry-level position as a Java programmer
- Further your career in coding by learning a new programming language
- Set yourself apart from competitors by refining your skills in a regulated environment
- Create Java programs that can be shown to prospective employers or used as a portfolio piece
Nat Dunn founded Webucator in 2003 to combine his passion for technical training with his business expertise and to help companies benefit from both. His previous experience was in sales, business and technical training, and management. Nat has an MBA from Harvard Business School and a BA in International Relations from Pomona College.