Open to: Grades 9-12
Eligibility: CTY-level or Advanced CTY-level math score required
Prerequisites: Completion of Intro to Java or equivalent
Course Format: Individually Paced
Course Length: Typically 3 months
Recommended School Credit: One-half academic year
Course Code: AJA
This course introduces students to intermediate and advanced features of the Java programming language. Students will learn about object-oriented programming concepts such as inheritance, interfaces, abstract classes and methods, and polymorphism. They will learn how to write and read Java primitive types and object classes to and from files, how to serialize objects and how to implement simple graphical user interfaces. Students will use comprehensive error handling and complex algorithms in their programming projects. Students will investigate real-world applications of the Java programming language.
Students will complete a portfolio of programming assignments as well as activities, and quizzes. At the end of the course, students submit a comprehensive final examination.
This course does not have any synchronous class meetings, but students may schedule one-on-one virtual meetings directly with the instructor to answer questions or concerns.
Students may be invited to interact in CTY community spaces that include students and instructors and potentially specially invited guests that are not enrolled in their course. Student contributions (e.g., projects, forum posts, etc.) may remain in the course after the student completes the course. These artifacts may be preserved to showcase student work or to continue important conversations.
Students must purchase a textbook and will need a Java language compiler.
Introduction to Java Programming and Data Structures, Comprehensive Version, by Y. Daniel Liang - 12th Edition
Note: ePub or loose-leaf versions of this edition are acceptable for use in this class.
By the end of the course, you will know how to:
Added after July 1, 2021:
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. Visit the Technical Requirements and Support page for more details.
Zoom online virtual classroom
This course uses an online virtual classroom which can be used for instructor-student communication if the student has any questions about the course or curriculum. 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 a computer with the Zoom desktop client installed to watch any recorded meetings. The Zoom desktop client and Zoom Mobile App are both available for free download.
Most course lectures may be viewed on mobile devices, but in some cases assignments and quizzes must be completed on a desktop or laptop computer.
Chromebooks are not recommended due to required downloading of specialized software.
This course uses Respondus LockDown Browser proctoring software for designated assessments. LockDown Browser is a client application that is installed to a local computer. Visit the Respondus website for system requirements.
While Chromebook can be used to progress through the course, all exams must be completed on a PC or Mac.
"This is my son's 2nd course with this instructor and JHU, and our expectation was exceeded again with the instructor’s quick, timely responses, depth of knowledge and her dedication to help my son understand the material."
"The instructor helped my son learn how to independently complete the course successfully. She gave helpful and timely feedback and guidance to me and my son. By the end of the course, my son was corresponding with the instructor and managing the course all on his own-- what a great skill to learn above and beyond material she helped him through, which he loved. He can't wait to take the next course."
"When I kept asking questions about the topic, my instructor didn't get irritated. He was patient with me and gave me well thought out answers. When I called him, he picked and helped me out."