About the Course

Advanced Java Programming

  • Grade 9+
  • CTY-Level
  • Individually Paced

Continue mastering the Java programming language by exploring its intermediate and advanced features, such as inheritance, interfaces, abstract classes, abstract methods, and polymorphism. You’ll 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. You’ll use comprehensive error handling and complex algorithms in your programming projects, and investigate real-world applications of the Java programming language. As you progress through the course you’ll complete a portfolio of programming assignments including a mid-term and final project, and test your knowledge with a comprehensive final examination. 

The recommended length of enrollment for this course is 3 months.

Time Commitment: 7-9 hours per week (7-9 hours independent work).

Students may enroll in this course at any time during the year.

Classes

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.
Synchronous class meetings typically last about an hour.

3 Months

3 months
Choose your start date
$885

Testing and Prerequisites

  Math Verbal
Required Level CTY-Level Not required
Check your eligibility using existing test scores If you do not have existing test scores:

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 Prerequisites

Advanced Java Programming requires:

1 prerequisite

Successful completion of Intro to Java or equivalent. Recommended placement test.

Cost and Financial Aid

  • Tuition
    • Varies
  • Application fee
    • Nonrefundable Application Fee - $15 (Waived for financial aid applicants)
    • Nonrefundable International Fee - $20 (outside US only)
Financial Aid is available

We are committed to serving all talented youth regardless of financial circumstances. Financial assistance is available based on need.

Learn More

Course Materials

Please acquire all course materials by the course start date. If you have questions about these materials or difficulty locating them, please contact ctyinfo@jhu.edu.
 

Book Title: Introduction to Java Programming and Data Structures, Comprehensive Version, 12th edition
Author: Y. Daniel Liang
ISBN: 9780136520238

  • Software: You will need to install a recent version of the JDK on your computer. Instructions are provided in the first unit of the course. If you work on an Apple computer, this may already be installed.

Technical Requirements

This course requires a computer with high-speed Internet access and an up-to-date web browser such as Chrome or Firefox. You must be able to communicate with the instructor via email. Visit the Technical Requirements and Support page for more details.

This course uses a virtual classroom for instructor-student communication. The classroom works on standard computers with the Zoom desktop client, and on tablets or handhelds that support the Zoom Mobile app. Recorded meetings can only be viewed on a computer with the Zoom desktop client installed. The Zoom desktop client and Zoom Mobile App are both free to download.

Most course lectures may be viewed on mobile devices, but some assignments and quizzes must be completed on a desktop or laptop computer.

Chromebooks are not recommended due to required downloading of specialized software. While Chromebook can be used to progress through the course, all exams must be completed on a PC or Mac.

You will need to install Respondus LockDown Browser proctoring software for designated assessments. View system requirements.

Terms & Conditions

You may have the option to post your work on public third-party sites (e.g., YouTube). 

Virtual class meetings may be recorded for students to review.

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.

Learn Java

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!

Meet our Computer Science and Technology Instructors