| preferred AP College board partner for AP classes
AP Computer Science A
Start Practice TestPractice Test
Share

AP Computer Science A Exam Info

Download PDF

The AP Computer Science A Exam will test your understanding of the programming concepts covered in the course units, as well as your ability to read and write code for computer programs.

This is a fully digital exam. You’ll complete multiple-choice and free-response questions in the Bluebook testing app, with all responses automatically submitted at the end of the exam.

Reference materials, such as equations sheets and reference tables, are available for this course. Go to Reference Information for Specific AP Exams to find reference materials for AP Computer Science A and exam day details.  

AP Computer Science A Exam

This is the regularly scheduled date for the AP Computer Science A Exam.

Fri, May 15, 202612 PM Local3hrs

Exam Components

Section 1: Multiple Choice

42 questions 55% of Score

The multiple-choice section includes individual, single questions as well as occasional sets of 2 questions. You’ll be asked to:

  • Determine the required code segments to produce a given output
  • Identify the output, value, or result of given program code based on initial values
  • Analyze program code for correctness, equivalence, and errors
  • Describe the behavior and conditions that lead to results in a program

Section 2: Free Response

4 questions 45% of Score

In the free-response section, you’ll respond to four questions with written answers:

  • Question 1: Methods and Control Structures—You’ll be asked to write program code to create objects of a class and call methods, and satisfy method specifications using expressions, conditional statements, and iterative statements.
  • Question 2: Class Design—You’ll be asked to write program code to define a new type by creating a class and satisfy method specifications using expressions, conditional statements, and iterative statements.
  • Question 3: Data Analysis with ArrayList—You’ll be asked to write program code to satisfy method specifications and create, traverse, and manipulate elements in an ArrayList structure.
  • Question 4: 2D Array—You’ll be asked to write program code to satisfy method specifications and create, traverse, and manipulate elements in 2D array objects.

Skills You'll Learn

  • Designing a program, developing the algorithms it needs, and writing code to implement them

  • Testing program code and correcting errors

  • Documenting and explaining how program code works

Units

Unit 2: Using Objects

You’ll learn the fundamentals of Java, a programming language, and other foundational concepts for coding. You’ll explore reference data as a way to represent real-world objects in a digital world and discover methods to perform more complex operations.

Topics may include:

  • Using primitive data types including int, double, and Boolean
  • Evaluating arithmetic expressions in program code
  • Using assignment operators to produce a value
  • Knowing how variables and operators are sequenced and combined in an expression to create a result
  • Using comments to describe the functionality of code
  • Using objects and classes to describe instances, attributes, and behaviors
  • Creating objects by calling constructors with and without parameters
  • Defining an object’s behavior using methods, including static and Math class
  • Calling non-static void methods with and without parameters
  • Using String objects and methods
  • Using application program interfaces (APIs) and libraries 

On The Exam

15%–25% of exam score

Unit 4: Iteration

You’ll learn techniques and standard algorithms to work with collections of related data, known as data structures. You’ll delve deeper into data sets, exploring array, ArrayList of objects, and 2D arrays.

Topics may include:

  • Considering intellectual property and ethical concerns in programming
  • Considering ethical issues around data collections
  • Using data sets
  • Representing multiple related items as array objects
  • Traversing an array by accessing the elements using iteration statements
  • Implementing standard algorithms that utilize array traversals to perform functions
  • Utilizing class libraries, including Integer and Double
  • Representing collections of related object reference data using ArrayList objects
  • Traversing an ArrayList by accessing the elements using iteration statements
  • Implementing standard algorithms that utilize ArrayList traversals to perform functions
  • Searching and sorting using standard algorithms
  • Representing collections of data as arrays of arrays, or 2D arrays
  • Traversing a 2D array by accessing the elements using nested iteration statements
  • Executing recursive methods
  • Searching and sorting using binary search and merge sort algorithms 

On The Exam

30%–40% of exam score

Unit 5: Writing Classes

You’ll explore how real-world interactions can be expressed digitally by organizing behaviors and attributes into classes.

Topics may include:

  • Designing a class, including whether attributes are public or private
  • Setting an object’s attributes using constructors
  • Defining behaviors of an object using non-void, void, and static methods
  • Breaking problems into smaller parts by creating methods to solve individual subproblems 

On The Exam

10%–18% of exam score

APFIVE © 2020.
Email: [email protected]|Privacy Policy