JV-100: Java for New Programmers
About this Course
This hands-on course introduces programming concepts and builds a solid foundation of programming skills that can be used to learn and understand related languages like C++, C#, or JavaScript. In this course you will write, compile, and debug programs in Java and Eclipse.
Audience Profile
Anyone who has had the desire to learn programming or has had an introduction and would like to acquire basic skills in Java.
At Course Completion
Students will have an overview of programming concepts and will be able to understand basic J2SE programs.
Outline
Language Background
- Origins
- Transitions
- New owner
- Similar languages
- Java structure
- Development process
- JDK
- JVM
Development environment
- Eclipse
- Projects
- Class project
- Packages
- Class creation
- Class configuration
- Class code
- Error fixing
- Class execution
Syntax
- Code blocks
- Statement
- Statement types
- Keywords
- Identifiers
- Java style
- Java APIs
Program Flow 1
- Iteration
- for loop logic
- for syntax
- for syntax - init
- for syntax - test
- for syntax - step
- for loop summary
- Conditionals
Data types
- Introduction
- Value (primitive) types
- Basic steps of variable use
- Declaring variable names
- Initializing variables
- Default types for literals
- Casting
- Floating point inaccuracy
- Currency
- Scope
- Text
- String literals
- String variables
- Reference types
Operators
- Arithmetic
- Relational
- Logical
- Other
- Operator precedence
- If-else replacement
Console input / output
- Reading a keyboard character
- Eclipse console
- Eclipse consoles
- Output to console
Program Flow 2
- switch
- Other loop keywords
Methods
- Definition
- Method naming
- Method input
- Overloading methods
- Method output
- Method code block
- Access modifiers
- Method access modifiers
- Method signature
- Static methods
- Calling methods
- After the call
- Math
- Let Eclipse write the method
OO Development
- Main points
- Class - analysis
Classes & Objects
- A relational data structure
- An object data structure
- Relational vs. OO
- Defining the class
- Class data structure
- Class as a data type
- Constructors
- Basic steps of object use
- Reference refers to object
- Many references, no object
- Garbage collection
Class methods
- Two class code sections
- Instance methods
- this
- Revisiting static
- Static blocks
- Unchangeable variables
- Constants
- Getters and setters
- Calling getters and setters
- toString( )
- Common class tasks
Constructors
- Purpose
- Rewriting the default constructor
- An all-arg constructor
- Shadowing
- DRY in constructors
Arrays
- The array
- Declaring arrays
- Creating arrays
- Initializing arrays
- Anonymous arrays
- Multi-dimensional arrays
- One field, no methods
- Iterating over an array
- The main( ) args array
- Eclipse command line input
- Iterating over command line input
Inheritance
- Definition
- Implementation
- Terminology
- Behavior expansion
- Object class
- Inherited fields/methods
- Stopping inheritance
- Overriding
- Overriding in Eclipse
- Stopping overriding
- Accessing overridden methods