Intro to Java
FRC Team 2168’s Java lessons were initally created by Kevin Harrilal in 2014. They were adapted by select members of the programming subteam, including Cierra, Nate, and Conor, in 2020, then further modified and expanded upon in 2024 by Nate and Cierra.
The lesson reviews and labs were created by Cierra (with the exception of lab 5, which was created by Nate) in 2020 and then edited by her and Nate in 2024.
Here we will compile the lesson slideshows, reviews, practice exercises, and lesson videos based on the slideshows.
The videos were created in order to show future students how these lessons should be taught, as well as to provide others with free Java lessons.
Note about review slideshows: The review questions are intended to be shown to students as they write their answers down on a sheet of paper. Then, after students have answered all questions, papers are collected and we go over each question. Thus, the question slides are duplicated, with the second set featuring animations that show the answers.
Lesson 1
This lesson covers:
- what Java is
- machine lang vs. HLL
- what makes up a basic Java program
- class and main method
- lines ending in semicolons
- print statements
- how to print to the console
- brief introduction to the terminal
- basic syntax
- arithmetic
- standard operations, PEMDAS
- variables
- data types
- primitives vs. object types
- naming convention
- constants
- statements vs. expressions
- concatenation
- arrays
- if statements
Lesson 2
This lesson covers:
- more syntax
- branching with if/else
- comparison operators
- object comparison with .equals()
- logical operators
- booleans
- control flow
- loops
- Scanner
Lesson 3
This lesson covers:
- methods
- modularity
- parameters
- return types
- calling methods
- methods as expressions, statements, or both
- the call stack & scope
- what object-oriented programming is
- basic terminology
- class definitions
- member variables
- declaring uninitialized variables
- public keyword
- member variables
- creating instances
- instance variables and methods
- setters and getters
- static variables and methods
Lesson 4
This lesson covers:
- use cases of setters and getters
- private variables and methods (encapsulation)
- why to use objects
Review questions (lab included in lesson)
Lessons 5
This lesson covers:
- default initialization
- null
- constructors
- initialization
- overloading
- imports & packages
- inheritance
- method overriding
- super keyword
Video not yet created
Lesson 6 will be added in the future
TBD