{"id":5977,"date":"2018-06-19T08:52:31","date_gmt":"2018-06-19T14:52:31","guid":{"rendered":"http:\/\/www.codewizardshq.com\/?page_id=5935"},"modified":"2025-08-12T05:56:30","modified_gmt":"2025-08-12T11:56:30","slug":"java2","status":"publish","type":"page","link":"https:\/\/www.codewizardshq.com\/java2\/","title":{"rendered":"Java II Intermediate Java APCS 2"},"content":{"rendered":"<div class=\"lazyblock-cw1-container-239pKK wp-block-lazyblock-cw1-container\"><div class=\"container \"><div class=\"lazyblock-inner-blocks\">\n<div class=\"lazyblock-cw1-wizard-level-block-1FEawG wp-block-lazyblock-cw1-wizard-level-block\">        <link rel='stylesheet' href='https:\/\/www.codewizardshq.com\/wp-content\/themes\/codewizards\/blocks\/lazyblock-cw1-wizard-level-block\/block.css' type='text\/css' media='all' \/>\n    \n<div class=\"grade-item grade-item-2   \">\n    <div class=\"image\">\n        <div class=\"inner\">\n                                                                <img loading=\"lazy\" decoding=\"async\" width=\"534\" height=\"538\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-accelerated-1.jpg\" class=\"attachment-full size-full\" alt=\"High school boy with backpack\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-accelerated-1.jpg 534w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-accelerated-1-298x300.jpg 298w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-accelerated-1-150x150.jpg 150w\" sizes=\"auto, (max-width: 534px) 100vw, 534px\" \/>                            \n            <div class=\"grade\"><\/div>\n        <\/div>\n    <\/div>\n    <div class=\"content\">\n        <div class=\"title\">\n            <h3>\n                Course Description\n                            <\/h3>\n        <\/div>\n\n        <div class=\"text\">\n            <p>In\u00a0<em>Intermediate Java<\/em>,\u00a0the final course of our\u00a0AP CS Prep track, students learn the fundamental principles of Object-Oriented Programming (OOP). They\u2019ll learn how to model real-world data using OOP concepts like encapsulation, inheritance, composition, and polymorphism. While this course focuses on OOP in the Java programming language, most ideas are transferrable to any mainstream object-oriented language. After completing this course, students will be well-prepared to enter a traditional AP Computer Science A course and hit the ground running!<\/p>        <\/div>\n\n        <div class=\"buttons\">\n                            <a href=\"#java-ii-sessions-header\" class=\"btn transparent\">View Lessons<\/a>\n            \n                            <a href=\"https:\/\/enroll.codewizardshq.com\/summer\" class=\"btn big\">Enroll<\/a>\n                    <\/div>\n    <\/div>\n<\/div>\n<\/div>\n\n<div class=\"lazyblock-cw1-wizard-level-block-Z15wI7R wp-block-lazyblock-cw1-wizard-level-block\">\n<div class=\"grade-item grade-item-2 image-right color-orange \">\n    <div class=\"image\">\n        <div class=\"inner\">\n                                                                <img loading=\"lazy\" decoding=\"async\" width=\"534\" height=\"538\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-platform-1.jpg\" class=\"attachment-full size-full\" alt=\"High school boy in codewizardshq platform\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-platform-1.jpg 534w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-platform-1-298x300.jpg 298w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/09\/reactivation-platform-1-150x150.jpg 150w\" sizes=\"auto, (max-width: 534px) 100vw, 534px\" \/>                            \n            <div class=\"grade\"><\/div>\n        <\/div>\n    <\/div>\n    <div class=\"content\">\n        <div class=\"title\">\n            <h3>\n                Learning Objectives\n                            <\/h3>\n        <\/div>\n\n        <div class=\"text\">\n            <p>When students complete\u00a0<em>Intermediate Java<\/em>, they will be able to:<\/p>\n<ul>\n<li>Model real-world objects using Object-Oriented Programming and the Java programming language.<\/li>\n<li>Use OOP concepts like inheritance, composition, polymorphism, and interfaces when designing Java programs<\/li>\n<li>Create practical applications and games that use OOP to organize the major software components.<\/li>\n<\/ul>        <\/div>\n\n        <div class=\"buttons\">\n                            <a href=\"#java-ii-sessions-header\" class=\"btn transparent\">View Lessons<\/a>\n            \n                            <a href=\"https:\/\/enroll.codewizardshq.com\/summer\" class=\"btn big\">Enroll<\/a>\n                    <\/div>\n    <\/div>\n<\/div>\n<\/div>\n\n<div class=\"lazyblock-cw1-wizard-level-block-Z9AxC wp-block-lazyblock-cw1-wizard-level-block\">\n<div class=\"grade-item grade-item-2  color-orange \">\n    <div class=\"image\">\n        <div class=\"inner\">\n                                                                <img loading=\"lazy\" decoding=\"async\" width=\"548\" height=\"528\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2019\/11\/grade-1.png\" class=\"attachment-full size-full\" alt=\"Level I\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2019\/11\/grade-1.png 548w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2019\/11\/grade-1-300x289.png 300w\" sizes=\"auto, (max-width: 548px) 100vw, 548px\" \/>                            \n            <div class=\"grade\"><\/div>\n        <\/div>\n    <\/div>\n    <div class=\"content\">\n        <div class=\"title\">\n            <h3>\n                Prerequisites\n                            <\/h3>\n        <\/div>\n\n        <div class=\"text\">\n            <p>These courses must be completed before Java 2:<\/p>\n<ul>\n<li>Wizard Level 1, Course 1 :\u00a0 Java 1<\/li>\n<\/ul>        <\/div>\n\n        <div class=\"buttons\">\n                            <a href=\"#java-ii-sessions-header\" class=\"btn transparent\">View Lessons<\/a>\n            \n                            <a href=\"https:\/\/enroll.codewizardshq.com\/summer\" class=\"btn big\">Enroll<\/a>\n                    <\/div>\n    <\/div>\n<\/div>\n<\/div>\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div id=\"java-ii-sessions-header\"><\/div>\n\n\n<div class=\"lazyblock-cw2-class-sessions-35b0261c wp-block-lazyblock-cw2-class-sessions\">\n        <link rel='stylesheet' href='https:\/\/www.codewizardshq.com\/wp-content\/themes\/codewizards\/blocks\/lazyblock-cw2-class-sessions\/block.css' type='text\/css' media='all' \/>\n    \n<div class=\"class-sessions\">\n    <a href=\"javascript:void(0)\" class=\"heading\">\n                    <span class=\"title\">Java II Class Lessons<\/span>\n        \n                    <span class=\"expand\">Expand All Lessons<\/span>\n        \n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n        <\/svg>\n    <\/a>\n\n            <ul class=\"items\">\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-01.png\" class=\"attachment-full size-full\" alt=\"Java Class 1\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-01.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-01-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-01-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        1.\n                                    <\/span>\n                                \n                                Introduction to OOP                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In the first lesson of this course, students are introduced to Object-Oriented Programming (OOP). This lesson covers the basics, such as defining classes, creating objects from classes, and accessing and modifying an object&#039;s properties. Students will build a simple program that models musical albums during the lesson and refine this project for homework.\u00a0<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-02.png\" class=\"attachment-full size-full\" alt=\"Java Class 2\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-02.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-02-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-02-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        2.\n                                    <\/span>\n                                \n                                Data &#038; Methods                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students solidify Object-Oriented Programming (OOP) concepts introduced in lesson 1 by building a small application modeling contact information. The students will practice defining a class, creating class instances, and will learn new techniques to validate data assigned to the class. The null value is introduced, and we show a few strategies for ensuring data integrity around null values and text length.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-03.png\" class=\"attachment-full size-full\" alt=\"Java Class 3\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-03.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-03-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-03-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        3.\n                                    <\/span>\n                                \n                                Encapsulation                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn about Encapsulation, a fundamental OOP technique for protecting the integrity of object data. They&#8217;ll learn the importance of private instance variables and implement getter and setter methods to modify and access these values from outside a class. We continue our work around validating object data but move these validations into the appropriate setter methods in this lesson.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-04.png\" class=\"attachment-full size-full\" alt=\"Java Class 4\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-04.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-04-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-04-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        4.\n                                    <\/span>\n                                \n                                Constructors                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn how to work with and define Constructors in their Java classes. Constructors are how we build objects in OOP code, and we&#8217;ve been using them since lesson 1 but couldn&#8217;t customize them until this lesson. The &#8220;this&#8221; keyword is introduced to refer to an instance of a class from within a class. By the end of the lesson, the students will implement a working CheckingAccount class with deposit and withdrawal functionality.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-05.png\" class=\"attachment-full size-full\" alt=\"Java Class 5\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-05.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-05-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-05-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        5.\n                                    <\/span>\n                                \n                                Static Data &amp;amp; Methods                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn how to use static variables and methods to represent data shared among all class instances. We also introduce the &#8220;final&#8221; keyword to make variables unmodifiable after they are initially set. The day&#8217;s project has them model an Avenger class (from the Avengers comic series). To complete this assignment, they will have to think about what properties all Avengers share and what properties are unique to each.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-06.png\" class=\"attachment-full size-full\" alt=\"Java Class 6\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-06.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-06-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-06-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        6.\n                                    <\/span>\n                                \n                                Composition                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn about a fundamental OOP concept, Composition. Composition allows programmers to create more sophisticated models of the natural world by building class models from combinations of other classes. The day&#8217;s project is to model typing and displaying text on a computer using Composition. To complete this assignment, the students hook together and model the interactions between Keyboard, Monitor, and Computer classes. <\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-07.png\" class=\"attachment-full size-full\" alt=\"Java Class 7\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-07.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-07-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-07-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        7.\n                                    <\/span>\n                                \n                                Inheritance                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn about inheritance, a fundamental pillar of OOP. We discuss Java&#8217;s inheritance model and build a simple app that uses Mammal, Cat, and Dog classes to showcase the potential of inheritance. By the lesson&#8217;s end, students should glimpse the power of inheritance for modeling real-world relationships and facilitating code reuse.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-08.png\" class=\"attachment-full size-full\" alt=\"Java Class 8\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-08.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-08-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-08-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        8.\n                                    <\/span>\n                                \n                                Polymorphism                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn about how polymorphism is used in OOP. Polymorphism lets different objects use the same method signature to perform individual actions. Students learn how to use polymorphism in the code from the previous lesson to move common behaviors to a parent class. Students also learn about dynamic binding in Java, which allows programmers to harness the power of polymorphism over collections of related objects.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-09.png\" class=\"attachment-full size-full\" alt=\"Java Class 9\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-09.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-09-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-09-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        9.\n                                    <\/span>\n                                \n                                Abstract Classes                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn how to create and use abstract classes in Java. Abstract classes allow software developers to build generalized representations of real-world objects at a higher level of abstraction than a traditional Java class offers. The students will create a generalized Shape class which they then extend to make unique Rectangle and Circle classes. To complete the lesson assignment, students must recognize the commonalities between all shapes and distinguish the characteristics that make individual shapes different.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-10.png\" class=\"attachment-full size-full\" alt=\"Java Class 10\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-10.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-10-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-10-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        10.\n                                    <\/span>\n                                \n                                Interfaces                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students learn how to use interfaces to model and share abstract behaviors between disparate classes. Interfaces are the final concept students must understand to have a well-rounded OOP foundation. We create two general-purpose interfaces in the lesson; one for movement and one for drawing objects to the screen. Sharing behavior between seemingly unrelated classes is a powerful tool for software developers using an OOP language like Java.\u00a0<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-11.png\" class=\"attachment-full size-full\" alt=\"Java Class 11\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-11.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-11-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-11-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        11.\n                                    <\/span>\n                                \n                                Final Project &#8211; Part 1                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In this lesson, students work on part 1 of the course&#8217;s final project. They&#8217;ll create a game that simulates a battle between two characters using OOP techniques they&#8217;ve learned throughout the course. We&#8217;ll work with abstract classes, encapsulation, inheritance, and polymorphism in part 1 of the project, and they&#8217;ll cover the remaining OOP concepts in the homework assignments and part 2 of the project.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                            <li class=\"item\">\n                                            \n                        <div class=\"image\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"540\" src=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-12.png\" class=\"attachment-full size-full\" alt=\"Java Class 12\" srcset=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-12.png 960w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-12-300x169.png 300w, https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2022\/08\/java2-lesson-12-768x432.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/div>\n                    \n                    <div class=\"info\">\n                                                    <div class=\"title\">\n                                                                    <span>\n                                        12.\n                                    <\/span>\n                                \n                                Final Project &#8211; Part 2                            <\/div>\n                        \n                        \n                        <div class=\"text\">\n                                                            <div><p>In the final lesson of this course, students will finish the emoji battle app they began in the previous class. They&#8217;ll add the ability to run multiple emoji battles using loops, then create a Scoreboard class to track the series&#8217; winner. We conclude the course with some ideas that the students can use to improve the app further on their own.<\/p><\/div>\n                            \n                                                    <\/div>\n                    <\/div>\n\n                    <a href=\"javascript:void(0)\" class=\"open\">\n                        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"39\" height=\"23\" viewBox=\"0 0 39.24 23.25\" class=\"arrow\">\n                            <path stroke=\"currentColor\" stroke-width=\"3px\" fill-rule=\"evenodd\" fill=\"none\" d=\"M1475,4423l16,16,16-16\" transform=\"translate(-1471.38 -4421.5)\" \/>\n                        <\/svg>\n                    <\/a>\n                <\/li>\n                    <\/ul>\n    <\/div>\n<\/div>\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n<\/div><\/div><\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"lazyblock-cw2-schedule-section-Z2nUWiC wp-block-lazyblock-cw2-schedule-section\">    \n            <link rel='stylesheet' href='https:\/\/www.codewizardshq.com\/wp-content\/themes\/codewizards\/blocks\/lazyblock-cw2-schedule-section\/block.css' type='text\/css' media='all' \/>\n    \n    <div class=\"cw2-schedule-section\">\n                    <div class=\"title\" id=\"apcs-summer-classes\">Ages 14-18 &#8211; AP Computer Science Prep Schedule<\/div>\n        \n                    <div class=\"description\">Meeting schedule is 1 hour per day Monday \u2013 Thursday for 3 weeks. Required course sequence for APCS track:<br><strong><a href=\"\/java1\/\">Java I<\/a> -> <a href=\"\/java2\/\">Java II<\/a><\/strong><br><br>(scroll right to view schedule on mobile)<\/div>\n        \n        <div class=\"table-responsive-wrapper\">\n            <div class=\"table-responsive\">\n                <table>\n                    <thead>\n                        <tr>\n                            <th class=\"time\">Available Time Slots<\/th>\n\n                                                            <th>June 3 &#8211; June 20<\/th>\n                                                            <th>July 8 &#8211; July 25<\/th>\n                                                            <th>Aug 5 &#8211; Aug 22<\/th>\n                                                    <\/tr>\n                    <\/thead>\n\n                    <tbody>\n                                                    <tr>\n                                <td class=\"time\">\n                                                                            <span>\n                                            <span class=\"icon icon-clock\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"0 0 19 19\"><path fill-rule=\"evenodd\" fill=\"currentColor\" d=\"M13.635,1.378 C14.994,2.160 16.072,3.230 16.869,4.589 C17.681,5.995 18.088,7.511 18.088,9.136 C18.088,10.761 17.681,12.277 16.869,13.683 C16.072,15.042 14.994,16.120 13.635,16.917 C12.229,17.730 10.713,18.136 9.088,18.136 C7.463,18.136 5.947,17.730 4.541,16.917 C3.182,16.120 2.111,15.042 1.330,13.683 C0.502,12.277 0.088,10.761 0.088,9.136 C0.088,7.511 0.502,5.995 1.330,4.589 C2.111,3.230 3.182,2.160 4.541,1.378 C5.947,0.550 7.463,0.136 9.088,0.136 C10.713,0.136 12.229,0.550 13.635,1.378 L13.635,1.378 ZM5.291,2.667 C4.166,3.323 3.275,4.214 2.619,5.339 C1.931,6.511 1.588,7.777 1.588,9.136 C1.588,10.495 1.931,11.761 2.619,12.933 C3.275,14.058 4.166,14.948 5.291,15.605 C6.463,16.292 7.729,16.636 9.088,16.636 C10.447,16.636 11.713,16.292 12.885,15.605 C14.010,14.948 14.900,14.058 15.557,12.933 C16.244,11.761 16.588,10.495 16.588,9.136 C16.588,7.777 16.244,6.511 15.557,5.339 C14.900,4.214 14.010,3.323 12.885,2.667 C11.713,1.980 10.447,1.636 9.088,1.636 C7.729,1.636 6.463,1.980 5.291,2.667 L5.291,2.667 ZM9.838,3.136 L9.838,8.386 L13.588,8.386 L13.588,9.886 L8.338,9.886 L8.338,3.136 L9.838,3.136 Z\"\/><\/svg><\/span>                                            9:00 AM &#8211; <br \/>\n10:00 AM CT                                        <\/span>\n                                                                    <\/td>\n\n                                                                    <td><\/td>\n                                                                    <td>Java I<\/td>\n                                                                    <td>Java II<\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"time\">\n                                                                            <span>\n                                            <span class=\"icon icon-clock\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"0 0 19 19\"><path fill-rule=\"evenodd\" fill=\"currentColor\" d=\"M13.635,1.378 C14.994,2.160 16.072,3.230 16.869,4.589 C17.681,5.995 18.088,7.511 18.088,9.136 C18.088,10.761 17.681,12.277 16.869,13.683 C16.072,15.042 14.994,16.120 13.635,16.917 C12.229,17.730 10.713,18.136 9.088,18.136 C7.463,18.136 5.947,17.730 4.541,16.917 C3.182,16.120 2.111,15.042 1.330,13.683 C0.502,12.277 0.088,10.761 0.088,9.136 C0.088,7.511 0.502,5.995 1.330,4.589 C2.111,3.230 3.182,2.160 4.541,1.378 C5.947,0.550 7.463,0.136 9.088,0.136 C10.713,0.136 12.229,0.550 13.635,1.378 L13.635,1.378 ZM5.291,2.667 C4.166,3.323 3.275,4.214 2.619,5.339 C1.931,6.511 1.588,7.777 1.588,9.136 C1.588,10.495 1.931,11.761 2.619,12.933 C3.275,14.058 4.166,14.948 5.291,15.605 C6.463,16.292 7.729,16.636 9.088,16.636 C10.447,16.636 11.713,16.292 12.885,15.605 C14.010,14.948 14.900,14.058 15.557,12.933 C16.244,11.761 16.588,10.495 16.588,9.136 C16.588,7.777 16.244,6.511 15.557,5.339 C14.900,4.214 14.010,3.323 12.885,2.667 C11.713,1.980 10.447,1.636 9.088,1.636 C7.729,1.636 6.463,1.980 5.291,2.667 L5.291,2.667 ZM9.838,3.136 L9.838,8.386 L13.588,8.386 L13.588,9.886 L8.338,9.886 L8.338,3.136 L9.838,3.136 Z\"\/><\/svg><\/span>                                            12:00 PM &#8211;<br \/>\n1:00 PM CT                                        <\/span>\n                                                                    <\/td>\n\n                                                                    <td>Java I  <\/td>\n                                                                    <td>Java II<\/td>\n                                                                    <td><\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"time\">\n                                                                            <span>\n                                            <span class=\"icon icon-clock\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"0 0 19 19\"><path fill-rule=\"evenodd\" fill=\"currentColor\" d=\"M13.635,1.378 C14.994,2.160 16.072,3.230 16.869,4.589 C17.681,5.995 18.088,7.511 18.088,9.136 C18.088,10.761 17.681,12.277 16.869,13.683 C16.072,15.042 14.994,16.120 13.635,16.917 C12.229,17.730 10.713,18.136 9.088,18.136 C7.463,18.136 5.947,17.730 4.541,16.917 C3.182,16.120 2.111,15.042 1.330,13.683 C0.502,12.277 0.088,10.761 0.088,9.136 C0.088,7.511 0.502,5.995 1.330,4.589 C2.111,3.230 3.182,2.160 4.541,1.378 C5.947,0.550 7.463,0.136 9.088,0.136 C10.713,0.136 12.229,0.550 13.635,1.378 L13.635,1.378 ZM5.291,2.667 C4.166,3.323 3.275,4.214 2.619,5.339 C1.931,6.511 1.588,7.777 1.588,9.136 C1.588,10.495 1.931,11.761 2.619,12.933 C3.275,14.058 4.166,14.948 5.291,15.605 C6.463,16.292 7.729,16.636 9.088,16.636 C10.447,16.636 11.713,16.292 12.885,15.605 C14.010,14.948 14.900,14.058 15.557,12.933 C16.244,11.761 16.588,10.495 16.588,9.136 C16.588,7.777 16.244,6.511 15.557,5.339 C14.900,4.214 14.010,3.323 12.885,2.667 C11.713,1.980 10.447,1.636 9.088,1.636 C7.729,1.636 6.463,1.980 5.291,2.667 L5.291,2.667 ZM9.838,3.136 L9.838,8.386 L13.588,8.386 L13.588,9.886 L8.338,9.886 L8.338,3.136 L9.838,3.136 Z\"\/><\/svg><\/span>                                            1:00 PM &#8211;<br \/>\n2:00 PM CT                                        <\/span>\n                                                                    <\/td>\n\n                                                                    <td><\/td>\n                                                                    <td>Java I<\/td>\n                                                                    <td>Java I<br \/>\n<br \/>\nJava II<\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"time\">\n                                                                            <span>\n                                            <span class=\"icon icon-clock\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"0 0 19 19\"><path fill-rule=\"evenodd\" fill=\"currentColor\" d=\"M13.635,1.378 C14.994,2.160 16.072,3.230 16.869,4.589 C17.681,5.995 18.088,7.511 18.088,9.136 C18.088,10.761 17.681,12.277 16.869,13.683 C16.072,15.042 14.994,16.120 13.635,16.917 C12.229,17.730 10.713,18.136 9.088,18.136 C7.463,18.136 5.947,17.730 4.541,16.917 C3.182,16.120 2.111,15.042 1.330,13.683 C0.502,12.277 0.088,10.761 0.088,9.136 C0.088,7.511 0.502,5.995 1.330,4.589 C2.111,3.230 3.182,2.160 4.541,1.378 C5.947,0.550 7.463,0.136 9.088,0.136 C10.713,0.136 12.229,0.550 13.635,1.378 L13.635,1.378 ZM5.291,2.667 C4.166,3.323 3.275,4.214 2.619,5.339 C1.931,6.511 1.588,7.777 1.588,9.136 C1.588,10.495 1.931,11.761 2.619,12.933 C3.275,14.058 4.166,14.948 5.291,15.605 C6.463,16.292 7.729,16.636 9.088,16.636 C10.447,16.636 11.713,16.292 12.885,15.605 C14.010,14.948 14.900,14.058 15.557,12.933 C16.244,11.761 16.588,10.495 16.588,9.136 C16.588,7.777 16.244,6.511 15.557,5.339 C14.900,4.214 14.010,3.323 12.885,2.667 C11.713,1.980 10.447,1.636 9.088,1.636 C7.729,1.636 6.463,1.980 5.291,2.667 L5.291,2.667 ZM9.838,3.136 L9.838,8.386 L13.588,8.386 L13.588,9.886 L8.338,9.886 L8.338,3.136 L9.838,3.136 Z\"\/><\/svg><\/span>                                            4:00 PM &#8211;<br \/>\n5:00 PM CT                                        <\/span>\n                                                                    <\/td>\n\n                                                                    <td>Java I<\/td>\n                                                                    <td>Java II<\/td>\n                                                                    <td><\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"time\">\n                                                                            <span>\n                                            <span class=\"icon icon-clock\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" viewBox=\"0 0 19 19\"><path fill-rule=\"evenodd\" fill=\"currentColor\" d=\"M13.635,1.378 C14.994,2.160 16.072,3.230 16.869,4.589 C17.681,5.995 18.088,7.511 18.088,9.136 C18.088,10.761 17.681,12.277 16.869,13.683 C16.072,15.042 14.994,16.120 13.635,16.917 C12.229,17.730 10.713,18.136 9.088,18.136 C7.463,18.136 5.947,17.730 4.541,16.917 C3.182,16.120 2.111,15.042 1.330,13.683 C0.502,12.277 0.088,10.761 0.088,9.136 C0.088,7.511 0.502,5.995 1.330,4.589 C2.111,3.230 3.182,2.160 4.541,1.378 C5.947,0.550 7.463,0.136 9.088,0.136 C10.713,0.136 12.229,0.550 13.635,1.378 L13.635,1.378 ZM5.291,2.667 C4.166,3.323 3.275,4.214 2.619,5.339 C1.931,6.511 1.588,7.777 1.588,9.136 C1.588,10.495 1.931,11.761 2.619,12.933 C3.275,14.058 4.166,14.948 5.291,15.605 C6.463,16.292 7.729,16.636 9.088,16.636 C10.447,16.636 11.713,16.292 12.885,15.605 C14.010,14.948 14.900,14.058 15.557,12.933 C16.244,11.761 16.588,10.495 16.588,9.136 C16.588,7.777 16.244,6.511 15.557,5.339 C14.900,4.214 14.010,3.323 12.885,2.667 C11.713,1.980 10.447,1.636 9.088,1.636 C7.729,1.636 6.463,1.980 5.291,2.667 L5.291,2.667 ZM9.838,3.136 L9.838,8.386 L13.588,8.386 L13.588,9.886 L8.338,9.886 L8.338,3.136 L9.838,3.136 Z\"\/><\/svg><\/span>                                            7:00 PM &#8211;<br \/>\n8:00 PM CT                                        <\/span>\n                                                                    <\/td>\n\n                                                                    <td><\/td>\n                                                                    <td><\/td>\n                                                                    <td>Java I<\/td>\n                                                            <\/tr>\n                                            <\/tbody>\n                <\/table>\n            <\/div>\n        <\/div>\n\n                    <div class=\"buttons\">\n                <a href=\"https:\/\/enroll.codewizardshq.com\/summer\" class=\"btn\">Enroll<\/a>\n            <\/div>\n            <\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":36076,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"inline_featured_image":false,"_lmt_disableupdate":"no","_lmt_disable":"","footnotes":""},"class_list":["post-5977","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.8 (Yoast SEO v26.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Java II Intermediate Java APCS 2 - CodeWizardsHQ<\/title>\n<meta name=\"description\" content=\"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codewizardshq.com\/java2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java II Intermediate Java APCS 2\" \/>\n<meta property=\"og:description\" content=\"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codewizardshq.com\/java2\/\" \/>\n<meta property=\"og:site_name\" content=\"CodeWizardsHQ\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/codewizardshq\/\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-12T11:56:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"719\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@codewizardshq\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t    \"@context\": \"https:\/\/schema.org\",\n\t    \"@graph\": [\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/\",\n\t            \"url\": \"https:\/\/www.codewizardshq.com\/java2\/\",\n\t            \"name\": \"Java II Intermediate Java APCS 2 - CodeWizardsHQ\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg\",\n\t            \"datePublished\": \"2018-06-19T14:52:31+00:00\",\n\t            \"dateModified\": \"2025-08-12T11:56:30+00:00\",\n\t            \"description\": \"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!\",\n\t            \"breadcrumb\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/#breadcrumb\"\n\t            },\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\/\/www.codewizardshq.com\/java2\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/#primaryimage\",\n\t            \"url\": \"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg\",\n\t            \"contentUrl\": \"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg\",\n\t            \"width\": 1920,\n\t            \"height\": 719,\n\t            \"caption\": \"Java II Page Header\"\n\t        },\n\t        {\n\t            \"@type\": \"BreadcrumbList\",\n\t            \"@id\": \"https:\/\/www.codewizardshq.com\/java2\/#breadcrumb\",\n\t            \"itemListElement\": [\n\t                {\n\t                    \"@type\": \"ListItem\",\n\t                    \"position\": 1,\n\t                    \"name\": \"Home\",\n\t                    \"item\": \"https:\/\/www.codewizardshq.com\/\"\n\t                },\n\t                {\n\t                    \"@type\": \"ListItem\",\n\t                    \"position\": 2,\n\t                    \"name\": \"Java II Intermediate Java APCS 2\"\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"WebSite\",\n\t            \"@id\": \"https:\/\/www.codewizardshq.com\/#website\",\n\t            \"url\": \"https:\/\/www.codewizardshq.com\/\",\n\t            \"name\": \"CodeWizardsHQ\",\n\t            \"description\": \"The leading online coding academy for kids and teens ages 8-18\",\n\t            \"publisher\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/#organization\"\n\t            },\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"SearchAction\",\n\t                    \"target\": {\n\t                        \"@type\": \"EntryPoint\",\n\t                        \"urlTemplate\": \"https:\/\/www.codewizardshq.com\/?s={search_term_string}\"\n\t                    },\n\t                    \"query-input\": {\n\t                        \"@type\": \"PropertyValueSpecification\",\n\t                        \"valueRequired\": true,\n\t                        \"valueName\": \"search_term_string\"\n\t                    }\n\t                }\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"Organization\",\n\t            \"@id\": \"https:\/\/www.codewizardshq.com\/#organization\",\n\t            \"name\": \"CodeWizardsHQ\",\n\t            \"url\": \"https:\/\/www.codewizardshq.com\/\",\n\t            \"logo\": {\n\t                \"@type\": \"ImageObject\",\n\t                \"inLanguage\": \"en-US\",\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/#\/schema\/logo\/image\/\",\n\t                \"url\": \"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2016\/08\/blueVertical@2x-e1572141901928.png\",\n\t                \"contentUrl\": \"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2016\/08\/blueVertical@2x-e1572141901928.png\",\n\t                \"width\": 150,\n\t                \"height\": 108,\n\t                \"caption\": \"CodeWizardsHQ\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\/\/www.codewizardshq.com\/#\/schema\/logo\/image\/\"\n\t            },\n\t            \"sameAs\": [\n\t                \"https:\/\/www.facebook.com\/codewizardshq\/\",\n\t                \"https:\/\/x.com\/codewizardshq\",\n\t                \"https:\/\/www.instagram.com\/codewizardshq\/\",\n\t                \"https:\/\/www.linkedin.com\/company\/codewizardshq\",\n\t                \"https:\/\/www.pinterest.com\/codewizardshq\/\",\n\t                \"https:\/\/www.youtube.com\/channel\/UC4NM0jfN0LI8_vWtiwLqgGw\"\n\t            ]\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Java II Intermediate Java APCS 2 - CodeWizardsHQ","description":"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codewizardshq.com\/java2\/","og_locale":"en_US","og_type":"article","og_title":"Java II Intermediate Java APCS 2","og_description":"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!","og_url":"https:\/\/www.codewizardshq.com\/java2\/","og_site_name":"CodeWizardsHQ","article_publisher":"https:\/\/www.facebook.com\/codewizardshq\/","article_modified_time":"2025-08-12T11:56:30+00:00","og_image":[{"width":1920,"height":719,"url":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@codewizardshq","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.codewizardshq.com\/java2\/","url":"https:\/\/www.codewizardshq.com\/java2\/","name":"Java II Intermediate Java APCS 2 - CodeWizardsHQ","isPartOf":{"@id":"https:\/\/www.codewizardshq.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codewizardshq.com\/java2\/#primaryimage"},"image":{"@id":"https:\/\/www.codewizardshq.com\/java2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg","datePublished":"2018-06-19T14:52:31+00:00","dateModified":"2025-08-12T11:56:30+00:00","description":"Java II coding class helps prepare high school kids for taking the APCS course. Learn object-oriented programming, inheritance, using libraries, and more!","breadcrumb":{"@id":"https:\/\/www.codewizardshq.com\/java2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codewizardshq.com\/java2\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codewizardshq.com\/java2\/#primaryimage","url":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg","contentUrl":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII.jpg","width":1920,"height":719,"caption":"Java II Page Header"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codewizardshq.com\/java2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codewizardshq.com\/"},{"@type":"ListItem","position":2,"name":"Java II Intermediate Java APCS 2"}]},{"@type":"WebSite","@id":"https:\/\/www.codewizardshq.com\/#website","url":"https:\/\/www.codewizardshq.com\/","name":"CodeWizardsHQ","description":"The leading online coding academy for kids and teens ages 8-18","publisher":{"@id":"https:\/\/www.codewizardshq.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codewizardshq.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codewizardshq.com\/#organization","name":"CodeWizardsHQ","url":"https:\/\/www.codewizardshq.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codewizardshq.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2016\/08\/blueVertical@2x-e1572141901928.png","contentUrl":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2016\/08\/blueVertical@2x-e1572141901928.png","width":150,"height":108,"caption":"CodeWizardsHQ"},"image":{"@id":"https:\/\/www.codewizardshq.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/codewizardshq\/","https:\/\/x.com\/codewizardshq","https:\/\/www.instagram.com\/codewizardshq\/","https:\/\/www.linkedin.com\/company\/codewizardshq","https:\/\/www.pinterest.com\/codewizardshq\/","https:\/\/www.youtube.com\/channel\/UC4NM0jfN0LI8_vWtiwLqgGw"]}]}},"featured_image_src":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII-600x400.jpg","featured_image_src_square":"https:\/\/www.codewizardshq.com\/wp-content\/uploads\/2020\/12\/header_JAVAII-600x600.jpg","_links":{"self":[{"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/pages\/5977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/comments?post=5977"}],"version-history":[{"count":6,"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/pages\/5977\/revisions"}],"predecessor-version":[{"id":71177,"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/pages\/5977\/revisions\/71177"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/media\/36076"}],"wp:attachment":[{"href":"https:\/\/www.codewizardshq.com\/wp-json\/wp\/v2\/media?parent=5977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}