Skip to main content

AP® Computer Science A

Basic & On Demand

Enrollment for Basic and On Demand courses is open on a rolling basis.

Enroll Now

Plus

Teachers can use the complete Plus course curriculum for flexible instruction.

Request Course

Course Summary

Develop a solid foundation in programming, using the Java programming language and logical problem-solving techniques. Through hands-on programming projects and participation in lab work, students develop and strengthen their ability to conceptualize and solve problems. Master object-oriented programming fundamentals including class and method constructs, standard programming algorithms, programming methodology, and syntax structures. 

This course prepares students for the AP® Computer Science A exam. 

Curriculum

This is a 2-semester course. We do not recommend taking both semesters simultaneously.

Unit 0: Introduction to AP® Computer Science A
  • Course Overview
  • The AP® Exam
  • Introduction to Computer Science
  • History of Computing
  • Digital Data Representation
  • Ethical Use and Responsibility
  • Computational Thinking
Unit 1: Intro to Java/Primitive Types
  • Using Java
  • Output in Java
  • Primitive Variables
  • Data Types
  • Basic Input and Output
  • Arithmetical Operations
  • Operators
  • Casting
Unit 2: Using Objects
  • Object-Oriented Programming
  • Methods
  • Parameters
  • String Class
  • String Methods
  • Java API and the Java Subset
  • Integer and Double Classes
  • Math Class
Unit 3: Boolean Expressions and If Statements
  • Control Structures
  • Logical Operations
  • Compound Boolean Expressions
Unit 4: Iteration/Loops
  • while Loops
  • for Loops
  • Traversing Loops
  • Types of Errors
  • Logic - AP® Exam Review
  • Consumer Review Lab
Unit 5: Writing Classes
  • Creating a Class
  • Instantiate an Object
  • Documentation
  • Encapsulation
  • this Keyword
Unit 6: Arrays
  • Arrays
  • Traversing Arrays
Unit 7: ArrayLists and Collections
  • ArrayLists
  • ArrayList Methods
  • Traversing ArrayLists
  • Algorithms
  • Algorithm Examples
  • Algorithm Pre & Post Conditions
  • Sorting Algorithms and Binary Search
  • Trace Algorithms
  • AP® Exam Review: Algorithms
  • AP® Exam Review: Data Structures
  • Programming Basics Exam Review
Unit 8: 2D Arrays
  • 2D Arrays
  • Traversing 2D Arrays
  • Stenography Lab
Unit 9: Inheritance
  • OOP Example
  • Inheritance
  • Constructors for Subclasses
  • Overriding Methods
  • super Keyword
  • Inheritance Hierarchy
  • Polymorphism
  • Object Class
  • Object Superclass
Unit 10: Recursion
  • Recursion
  • Recursive Base Case
  • Fibonacci Recursive
  • Recursion - AP Exam Review
  • AP® Exam Review: OOP
  • AP® Exam Review: Software Development
  • Basic AP® CSA Exam Strategies