Allan Didier

Computer Science Teacher

# APCS Exam Content

Below is a list of the content to be covered for the AP Computer Science A exam for the school year 2019-2020. Make sure to check the APCS Exam Format page to see what type of questions will be used on the exam. This can also be found on pp 22-25 of the AP Computer Science A Course and Exam Description document.

• Unit 1: Primitive Variables (int, float, double, Boolean, etc.)
• 1.1 Why Programming? Why Java?
• 1.2 Variables and Data Types
• 1.3 Expressions and Assignment Statements
• 1.4 Compound Assignment Operators
• 1.5 Casting and Ranges of Variables
• Unit 2: Using Objects
• Unit 3: Boolean Expressions and if Statements
• 3.1 Boolean Expressions
• 3.2 if Statements and Control Flow
• 3.3 if-else Statements
• 3.4 else if Statements
• 3.5 Compound Boolean Expressions ( && (and),  || (or) )
• 3.6 Equivalent Boolean Expressions
• 3.7 Comparing Objects
• Unit 4: Iteration
• 4.1 while Loops
• 4.2 for Loops
• 4.3 Developing Algorithms Using Strings
• 4.4 Nested Iteration
• 4.5 Informal Code Analysis
• Unit 5: Writing Classes
• 5.1 Anatomy of a Class
• 5.2 Constructors
• 5.4 Accessor Methods (Getters)
• 5.5 Mutator Methods (Setters)
• 5.6 Writing Methods
• 5.7 Static Variables and Methods
• 5.8 Scope and Access
• 5.9 this Keyword
• 5.10 Ethical and Social Implications of Computing Systems
• Unit 6:  Arrays
• 6.1 Array Creation and Access
• 6.2 Traversing Arrays
• 6.3 Enhanced for Loop for Arrays (for each)
• 6.4 Developing Algorithms Using Arrays
• Unit 7: Array Lists
• 7.1 Introduction to ArrayList
• 7.2 ArrayList Methods
• 7.3 Traversing ArrayLists
• 7.4 Developing Algorithms Using ArrayLists
• 7.5 Searching (Linear and Binary)
• 7.6 Sorting (Selection and Insertion)
• 7.7 Ethical Issues Around Data Collection
• Unit 8: 2D Arrays
• 8.1 2D Arrays
• 8.2 Traversing 2D Arrays
• Unit 9: Inheritance
• 9.1 Creating Superclasses and Subclasses
• 9.2 Writing Constructors for Subclasses
• 9.3 Overriding Methods
• 9.4 super Keyword
• 9.5 Creating References Using Inheritance Hierarchies
• 9.6 Polymorphism
• 9.7 Object Superclass
• Unit 10: Recursion
• 10.1 Recursion
• 10.2 Recursive Search