Course Description

An in-depth course detailing everything related to java, from basic concepts of how a computer functions to advanced concepts that appear on the AP exams. This course blends rigor with fun as students participate in hands-on projects and labs to better understand the language of java and take the step into more advanced coding.

Curriculum Outline:

Introduction to Java

Session 1:

  • How a Computer Works
  • Data Types
  • System Input and Output
  • Project Lab 1 – Mini market

Session 2:

  • Decision Structure and Advanced Boolean
  • Loops and Iterators
  • Project Lab 2 – Rock paper scissors game
  • Basics of Errors and Exception
  • Array and ArrayLists
  • Final Project – Mini market revisited

Advanced Java

Session 3:

  1. Binary, hexadecimal, and ASCII
  2. Math class and arithmetic functions
  3. Project lab 3 – Create a calculator
  4. Object-oriented concepts
  5. Project lab 4 – Create your own objects

Session 4

  1. Threads, Runnables and Concurrency
  2. Advanced Exceptions and Errors
  3. Advanced ArrayLists and list
  4. Lambda Functions and new java additions
  5. Final project – Create your own objects expanded

Curriculum in Detail

Session#1 (14 hours)

  1. Introductory Topics
    1. CPU, GPU, SSD/hard drive, and RAM
    2. Memory allocation 
    3. CPU cycles
    4. Strategic programming
    5. Java formatting
    6. Java keywords
  2. Data Types
    1. Primitive data types
    2. Strings and StringBuilder objects
  3. System Input and Output
    1. Scanner objects
    2. Data collection
    3. Outputting formatted information
  4. Project Lab 1
    1. Mini market: Students will create a project that prompts the user for purchases and can output a receipt following a format.

Session #2 (18 hours)

  1. Advanced Boolean and Decision Structure
    1. Boolean operators
    2. If and if-else statements
    3. Ternary operators
    4. Switch statements
  2. Loops and Iterators
    1. For, while, and do-while loops
    2. Nested loops
  3. Project Lab 2
    1. Rock paper scissors game: students will create a program that can play rock paper scissors against the user
  4. Basics of Errors and Exception
    1. Compile-time errors
    2. Run-time errors
    3. Handling and try-catch blocks
    4. Outputting formatted information
  5. Array and ArrayLists
    1. Arrays and ArrayLists objects
    1. How to navigate and find things in arrays
  6. Final Project
    1. Mini market revisited: Students will build onto their first project lab using arrays and loops to make the program more efficient and detailed.

AI005 Advanced Java

Session#3 (22 hours)

  • Binary, hexadecimal, and ASCII
    1. Converting between the different base systems
  • Math class and arithmetic functions
    1. Converting and casting between different casts
    2. All arithmetic methods declared in the javadocs
  • Project lab 3
    1. Students will create a calculator using the math functions that solve a mathematical problem
  • Object-oriented concepts part 1
    1. Accessor and constructor methods
    2. Inheritance and polymorphism
  • Object-oriented concepts part 2
    1. Interfaces
    2. Enums
    3. Abstract classes 
  • Project lab 4: 
    1. Create your own objects: students will use objects to create their own network of code

Session #4 (21 hours)

  • Threads, Runnables and Concurrency
    1. Threads, Runnables, and concurrency
  • Advanced Exceptions and Errors
    1. Custom exception
    2. Throw and finally code blocks
  • Advanced ArrayLists and list
    1. Lists, LinkedLists, and other collections
  • Lambda Functions and new java additions
    1. New additions to java 
  • Final project:
    1. Create your own objects expanded
    2. Use everything you learned to create anything you want