Java Tutorial

Since its initial release in 1996, Java has been a hugely successful programming language for large-scale projects.  This tutorial assumes that you already have some experience coding in a language other than Java, and are ready to be challenged with more advanced concepts in Computer Science.  Although not officially an Advanced Placement CS preparation course, these notes will cover the complete AP subset of the Java Language and more. By following along and doing the practice problems you’ll achieve a solid foundation in the Java language and core libraries, Object-Oriented Programming (OOP), data structures and algorithms, Graphical User Interfaces (GUIs), and be ready for advanced study such as Android development.

1.0 Java Fundamentals

1-1 Getting Started

1-2 Variables

1-3 Arithmetic Operations

1-4 Getting User Input

1-5 Fancy Output

1-6 Control Flow

1-7 The if statement

1-8 The for Loop

1-9 The while Loop

1-10 The do..while Loop

2.0 Object-Oriented Java

2-1 Void Methods

2-2 Value Methods

2-3 Recursive Methods

2-4 Working with Objects: Strings

2-5 Working with Objects: Files

2-6 What is Object-Oriented Programming?

2-7 Constructors

2-8 The final and static Keywords

2-9 Enhancing the Fraction Class

2-10 Inheritance

2-11 Accessibility

2-12 Polymorphism

3.0 Data Structures and Algorithms

3-1 One-Dimensional Arrays

3-2 Arrays in Action

3-3 Two-Dimensional Arrays

Tic-Tac-Toe Example

3-4 The ArrayList Collection

3-5 Searching Algorithms

3-6 Analysis of Algorithms

3-7 Sequential Sorting Algorithms

3-8 Recursive Sorting Algorithms

3-9 The Static Stack

3-10 The Static Queue

3-11 The Linked List

3-12 The Dynamic Stack

3-13 The Dynamic Queue

3-14 The Java Collections Framework

4.0 Graphical User Interfaces

4-1 Introducing Swing

4-2 Designing Graphical Objects

4-3 Labels and Buttons

4-4 More Swing Components

4-5 Layout Managers

4-6 Handling Mouse Events

4-7 A Line Drawing App

5.0 Android Development

5-1 Hello Android!

5-2 Improving Our First App

5-3 TipCalculator App

5-4 Improved TipCalculator App

5-5 More Widgets