Advanced Java Programming
- Grade 9+
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 hours per week
School Credit Equivalency: Half of an academic year
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 PrerequisitesAdvanced Java Programming requires:
Successful completion of Intro to Java or equivalent. Recommended placement test.
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: Introduction to Java Programming and Data Structures, Comprehensive Version by Y. Daniel Liang (12th Edition)
Software: A recent version of the Java Development Kit (JDK) - Instructions are provided in the course.
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!