$2,895.00
Duration | Four Days |
Description
Duration: 4 Days
Description
The Java language began modestly as a programming language to address the needs of a diverse set of consumer appliances, but has since evolved to become the most popular language and platform for building enterprise level applications. This course teaches you the syntax and core APIs of the Java programming language while also coaching you on the conventions and practical techniques necessary to code Java professionally. Note: this class is based on Java 8.
The class begins by describing the core syntax of the Java language while also exposing students to object-oriented programming concepts. After establishing this essential foundation, the class then covers other crucial topics like exception handling, packaging, and when to use arrays versus collections.
Learning Objectives
- Master basic Java 8 syntax.
- Know how to write, compile and execute a Java application on a Java Virtual Machine.
- Become familiar with Javadocs and how to locate Java API within Java’s immense libraries.
- Learn Java coding conventions/standards.
- Know how the object-oriented principles of encapsulation, inheritance and polymorphism manifest in Java.
- Understand the basics operations and mechanics of the Java Virtual Machine.
Audience
This class is intended for experienced software developers looking to get a foundation in Java, however no prior knowledge of Java or Java tools is assumed.
Prerequisites
There are no prerequisites for Complete Java. Object oriented programming experience is helpful.
Course Outline
Getting Started with Java
- What is Java?
- The Java Platform
- Obtaining Java
- Editions and Versions of Java
- Java History
- The JDK
- Your First Java Program
- Revisiting the JVM
- API documentation
Object Oriented Programming in Java
- Object-Oriented Programming
- Objects vs. Primitives
- Creating (Instantiating) Objects
- Stack and Heap
- Using Objects
- Initializing Data
- Creating Object Types
- Building Constructors
- Default Constructor
- Initialization Block
Static
- Class vs. Object
- Static Variables
- Static Method
- Static Initialization Block
- “this” Keyword
- Scope
- Garbage Collection (GC)
- Java Memory Leaks
Packaging
- Packages
- Classpath
- Java Archive (JAR)
Conventions & Primitives
- Coding standards
- Valid Identifiers
- Comments
- Primitive Data Types
- Primitive Literals
- Primitive Conversion
- Big Numbers
Java Syntax
- Enums
- Conditionals
- Operators
- Loops
- Break, Continue, and Labels
Strings
- String Objects
- String Operations and Operators
- Immutable Strings
- Passing by Value
Encapsulation & Data Hiding
- Encapsulation & Data Hiding
- Accessors/Mutators or Getters/Setters
- Access Modifiers
- Encapsulation/Data Hiding Resources
Inheritance
- Chaining Constructors
- Overloading Methods
- Overriding Methods and Revisiting the Super Reference
- The Three Faces of Final
Polymorphism
- Polymorphism
- Benefits of Polymorphism
- Object Type Casting
- The Object Class
Abstract Classes and Interfaces
- Abstract Classes
- Interfaces
- Revisiting Overriding Methods: Covariant Returns
Lambda Expressions and Static Imports
- Marker and Functional Interfaces
- Lambda Expressions
- Predicate
- Static Imports
Arrays
- Arrays
- For-Each
- Polymorphism Revisited
- Multi-Dimensional Arrays
- Sorting and Searching Arrays
- Common Array Mistakes
- Varargs
Collections
- When arrays are not enough
- Collections
- The Collection Interface
- Iterator
- Lists
- Sets
- Queue
- ArrayBlockingQueue
- PriorityQueue
- Deque
- ArrayDeque
- Maps
- HashMap
Working with Collections and Arrays
- Limitations of Collections
- Generics and Autoboxing
- Diamond Operator
- Sorting and Searching Arrays and Collections
- Comparable
- Comparator
Exception Handling
- Throwable
- Catching Exceptions
- Finally block
- The Exception Object
- Runtime vs. Checked Exceptions
- Creating Exceptions
Appendix A – JDBC
- Why JDBC?
- Driver Manager
- Connections
- Statements
- Inserting Rows
- Updating Rows
- Deleting Rows
- Other Modifying Statements
- Result Set
- Mapping Between SQL & Java Data Types
- PreparedStatement
- CallableStatement
- SQLException
- Metadata
- Datasource
Appendix B – Java GUI
- Java Foundation Classes (JFC)
- Top Level Containers
- Components
- Layout Management
- BorderLayout
- FlowLayout
- BoxLayout
- Event Handling
- Adapters
Appendix C – Assertions