Virtual Virginia

3185 Advanced Placement Computer Science A

Field of Study

AP Computer Science A focuses on the computing skills required to program in Java. The course introduces students to computer science through various topics that include problem solving, design strategies and methodologies, organization of data (data structures), approaches to processing data (algorithms), analysis of potential solutions, and the ethical and social implications of computing.

Material Covered

The course is meant to be the equivalent of a first-semester college level course in Computer Science and includes the study of object-oriented (OO) design, encapsulation, and abstraction. The course also emphasizes the design issues that make programs understandable, adaptable, and reusable. An understanding of the basic hardware and software components of computer systems, an understanding of the binary numbering system and its relationship to ASCII, and an understanding of the responsible use of computer systems are all integral parts of the course.

Student Expectations

Students will spend 2 to 3 days a week studying the course materials and textbook, and the rest of the week working on labs. Student work will be required outside of class time.

Related Requirements

At the conclusion of the course, students will be prepared to take the Advanced Placement AP Computer Science A Exam, and are expected but not required to do so.


  • Successful completion of Algebra II or Algebra II/Trigonometry (required).
  • Successful completion of Computer Mathematics or Computer Programming (recommended).

Course Texts and Materials


  • Big Java: Early Objects, 6e
    ISBN# 978-1-119-05644-7 or 978-1-119-14159-4
    Publisher: Wiley
  • A free Java compiler such as BlueJEclipse or Netbeans


  • Barron’s AP Computer Science A 7th Edition
    ISBN# 9781438005942
    Publisher: Barron’s Educational Books