There are currently no items in your shopping cart.

User Panel

Forgot your password?.

Beginner Professional Java – Learn to Code for Work and Fun

Preparation and Setup :
Welcome and Course Goals
What is Programming?
Install BlueJ with the Combined Installer
Using BlueJ
Typing {} [] / ' and " - and some Notes on Touch Typing
Using BlueJ's Debugger Tool
Practice: Creating and Running Programs (Assignment 1)
What did I just type in? Concepts and Vocabulary for Source Code
Troubleshooting Your Typing (Printable Guide)

Text, Numbers, and Interaction :
Practice: Story Time
3 pages
Practice: A Poem
3 pages
Learning Strategies
Ask Questions and Fill in the Blank - Input and Variables
Numbers vs Text: Planning Variables and Data Types
Scanner, Keyboard Input, and Skipping the Newline Character
Practice: Grocery List (Download Requirements PDF)
Challenge: Treasure Chest
3 pages
Variables - Will It Compile?
11 questions
How to Experiment with Code
Casting in More Depth
Freestyle: Questions and Answers
5 pages

Decision Making and Program Flow :
This Path or That One? Part 1: Comparisons
This Path or That One? Part 2: If Statements
Practice: Sandwich Shop
3 pages
Indenting Code Properly
Comparisons with Strings
Practice: Entertainment Suggestions
3 pages
Printing, Variables, and If Statements
10 questions
A Special Message
Flowcharts - Software Planning Diagrams
Iterative Design with Flowcharts and Pseudo-code
Practice: Decisions, Flowcharts, and Pseudo-Code, Oh my! Cat and Mouse
5 pages
Boolean Combinations
Boolean Combinations Practice
8 questions
Demos, Collaboration, and Self-Evaluation Checklists
Freestyle: Interactive Story
Self-Evaluation Checklist: Variables, Conditions, If, Input/Output
7 pages

Introducing Methods :
Defining and Calling a Method or Function
Practice: Verse and Chorus with Methods
2 pages
Method Input Parameters
Method Return Values (many sample code downloads)
Practice: Calculator Methods
Practice: Count to Ten in English and Spanish
Challenge: Pretty Dates
4 pages
Practice: Many Methods
1 page
Method Signatures
Challenge: Leap Years and Test-First Development
2 pages
Freestyle: Function Junction
1 page

Running in Circles: Loops and Repetition :
While Loops: Keep Going Until Done
Practice with While: Are We There Yet?
1 page
Examining the Sections of a Loop
Practice with While: Adding Machine
2 pages
Practice with While: Thank You Letter, Mail Merge
2 pages
Practice: Count to 30
1 page
Practice: Count to 100 by 5's
1 page
Do-while Loops: Do it at least once
Practice with Do-While: Validating Inputs
2 pages
A Roll of the Virtual Dice: Random Numbers
Practice: Guess My Number
2 pages
Counting Made Easier: For Loops
Practice with For Loops 1
1 page
Practice with For Loops 2
1 page
Nested Loops
Practice: Print the Multiplication Tables
1 page
Challenge: Multiplication Tables Grid
2 pages
Challenge: Color Patterns
4 pages
Freestyle: Loops
On Independent Learning

Arrays, Characters, and Text Manipulation :
Practice: Number Arrays
1 page
ASCII and Other Character Encodings
Practice: Print the Ascii Chart
1 page
Practice: Letters to Numbers, Numbers to Letters
1 page
Practice: Lower to Upper
1 page
Bits, Bytes, and Binary: Part 1
Binary Arithmetic: Part 2
Hexadecimal Numbers
Practice: Hidden Message
2 pages
Clearing the Screen in BlueJ from Code
Multi-Dimensional Arrays
Practice: Temperatures
2 pages
Freestyle: Data and Logic
Capstone Challenge: Tic Tac Toe
5 pages

Object-Oriented Coding: Classes and Methods :
Roadmap to the Next Phase of Learning: Code Structure and Organization
Object-Oriented Concepts: What is a Class
Object-Oriented Concepts: Variable Scope and Shadowing
Object-Oriented Concepts: Public/Private and Get/Set Methods
Object-Oriented Concepts: Static vs Instance
Object-Oriented Concepts: Static Code Syntax
From Requirements to Classes: Ice Cream Shop Part 1/2
From Requirements to Classes: Ice Cream Shop Part 2/2
Using BlueJ's Object-Oriented Practice Tools
Null Pointer Exceptions and Arrays of Classes
Practice: Creating Classes, Microblog User, Post: Part 1/2
2 pages
Java Naming Rules and Capitalization
Object-Oriented Concepts: Single Responsibility Principle
Object-Oriented Concepts: Relationships Between Classes
Challenge: Creating Classes, Microblog Menu/UI: Part 2/2
2 pages

Object-Oriented APIs and Documentation :
Packages: A Way of Organizing Code
Reading API Documentation
Practice: Integer
2 pages
Another Look: Scanner API
Using String API, and Defining Locales, Deprecation, Immutability
Practice: String Manipulations 1: Thank You Merge Letter
1 page
Challenge: String Manipulations 2: Book Titler
1 page
Writing Javadoc for Your Own Classes
Practice: Writing Javadoc for Your Microblog Code
1 page
Freestyle: Classes
1 page

Inheritance and Encapsulation :
Learning Tips
Variable Scope and Lifetime
Java Beans, Bean Properties, and Getter / Setter Methods
Purpose of Field Accessor Methods
Practice: Bean Naming Conventions
1 page
Examining Unfamiliar Code: Web Scraper (Part 1/2)
Examining Unfamiliar Code: Web Scraper (Part 2/2)
Inheritance and the toString() Method
Using the Date and Calendar APIs
DateFormat and NumberFormat
Practice: Dates, Numbers, and Parsing
Modifiers: public, private, protected, package-private
Static Methods and Variables vs Instance Methods and Variables
Philosophy of Inheritance and Composition
Practice: Pattern Maker - Inheritance, Scope, and Modifiers
3 pages
Inheritance Modifiers: abstract, final
Using instanceof
Constructors, this(), and super()
Javadoc Inheritance
Freestyle: Classes and Inheritance

Exceptions and File IO :
Exceptions 1: Interrupting the Flow
Exceptions 2: Catching and Reporting Strategies
Practice with Exceptions
Reading and Writing Text Files with Java IO classes
Practice: Reading and Writing Files
Practice: Reading and Writing Data
Exceptions 3: Creating Custom Exceptions
Exceptions 4: Multi-catch for Java 7 and Higher
More Data File Formats
Challenge: Exceptions and Data Files
Freestyle: Exceptions and Data

Interfaces, Generics, and Collections :
Practice: Crossword Puzzle Solver with Interfaces
Using Generics in Collections
Maps, Sets, and Lists: Collections Framework
For Loops, Enumerations, and Iterator
Practice: Collections
Sorting Data with a natural sort order
Practice: Palindrome Detection from a file
Enums and Constants
Comparisons: .equals() method
Comparisons: .hashCode() method
Custom Sorting, Comparable, and Comparator
Practice: Custom Sorting
Challenge: Collections and Data Processing
Freestyle: Collections and Data

Software Reuse, Relational Data, and Final Project :
Classpath and Jar Libraries with BlueJ
Copyright and Reuse in Source Code Licensing
Modeling Relational Data in Files and Java Classes
Practice: Relational Data
Final Project - Tracking Children's Screen Time
Learning Next Steps