AP Computer Science A
- Grade 9+
Take on a college-level challenge as you cover topics typically found in a university course while also preparing for the AP Computer Science A exam. In this course, you’ll gain in-depth knowledge of procedural abstraction, data abstraction, object-oriented design and Java programming methodology, and the use of algorithms and data structures.
Other major areas we’ll cover include the concepts of computer science, arrays and strings, understanding existing code, and the use of standard Java class libraries.
Your instructor will guide you through video lectures, readings, forum discussions, programming exercises, and other interactive resources. This course does not have synchronous class meetings, but you can schedule one-on-one virtual sessions with your instructor to answer questions.
Enrollment and tuition are time-based—students may enroll in a course by selecting an open class below. Students will progress at their own pace, with guidance from instructors who strive to meet individual needs. Note: You will need to have an active CTY Account to complete registration through MyCTY.
Testing and Prerequisites
|Required Level||CTY-Level||Not required|
Students must achieve qualifying scores on an advanced assessment to be eligible for CTY programs. If you don’t have qualifying scores, you have several different testing options. We’ll help you find the right option for your situation.Sign up for Testing Learn More
Course PrerequisitesAP Computer Science A requires:
Completion of Algebra I and high school Introductory Computer Science course
Cost and Financial Aid
- Nonrefundable Application Fee - $15 (Waived for financial aid applicants)
- Nonrefundable International Fee - $20 (outside US only)
We are committed to serving all talented youth regardless of financial circumstances. Financial assistance is available based on need.Learn More
Textbook: Java: How to Program (Late Objects Version), P. Deitel and H. Deitel, 11th Edition (Prentice-Hall, 2017)
Software: A recent version of the Java Development Kit (JDK) - Instructions are provided in the course.
Earning School Credit
This course requires a properly maintained computer with high-speed internet access and an up-to-date web browser (such as Chrome or Firefox). The student must be able to communicate with the instructor via email.
The classroom works on standard computers with the Zoom desktop client and also tablets or handhelds that support the Zoom Mobile app. Students will need the Zoom desktop client installed to watch any recorded meetings. The Zoom desktop client and Zoom Mobile App are both available for free download.
About Computer Science and Technology at CTY
Are you a student in elementary through high school who dreams of being a coder? Do you want to develop critical thinking and learn creative problem solving? And do you want to do it all on your own time and at your own speed? Our fun and lively online Computer Science and Technology courses range from Scratch programming for young scholars to advanced Java concepts and AP Computer Science. Gear up for learning real-world computer languages and practicing new programming skills in an array of projects including animation, game design, web design, and more.
In the newly revised Introduction to Java course, you'll develop introductory Java programs to provide technology solutions for an imaginary new company of your choosing. Think of an idea for a business, hobby, or interest you have. The programs you write in this course will support your imaginary business, and maybe someday you'll use them to start your own company!
Get started with Computer Science and Engineering
In the updated Introduction to Computer Science and Engineering course, you’ll get to use your scientific and creative abilities to design and build lots of cool projects. You'll learn how to use a MaKey MaKey board and Scratch programming to invent games and solve problems. Get ready to take a hands-on approach in this fun course!