Introduction to Java
- Grade 9+
Learn the basic features of the Java programming language such as primitive and non-primitive data types, control flow constructs, built-in class libraries, and object-oriented programming concepts like classes, objects, method overloading, and encapsulation. Your typical assignments and projects will include using built-in and programmer-defined classes, performing basic input and output operations, and solving more complex programming problems with a real-world focus. At the end of this course, you’ll submit a comprehensive final examination and will be prepared to study more advanced topics in our next-level course, Advanced Java Programming.
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.
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
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
Please acquire all course materials by the course start date. If you have questions about these materials or difficulty locating them, please contact firstname.lastname@example.org.
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. Visit the Technical Requirements and Support page for more details.
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.
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!