Please enable JavaScript to use CodeHS

Outline


1. Introduction to Programming in Java with Karel the Dog
1.1 Introduction to Programming With Karel
Video 1.1.1 Introduction to Programming With Karel
Check for Understanding 1.1.2 Quiz: Karel Commands
Example 1.1.3 Our First Karel Program
Exercise 1.1.4 Your First Karel Program
Exercise 1.1.5 Short Stack
1.2 More Basic Karel
Video 1.2.1 More Basic Karel
Check for Understanding 1.2.2 More Basic Karel
Example 1.2.3 Tennis Ball Square
Exercise 1.2.4 Make a Tower
Exercise 1.2.5 Pyramid of Karel
1.3 Java Programs and the Run Method
Video 1.3.1 Writing a Java Program
Check for Understanding 1.3.2 Run Method
Example 1.3.3 Square Karel
Exercise 1.3.4 Tower Karel
Exercise 1.3.5 Gold Medal Karel
Exercise 1.3.6 Maze Karel
1.4 Karel Can't Turn Right
Video 1.4.1 Karel Can't Turn Right
Check for Understanding 1.4.2 Karel Can't Turn Right
Example 1.4.3 Tower and Turn Right
Exercise 1.4.4 Slide Karel
Exercise 1.4.5 Fireman Karel
Badge 1.4.6 Right Turn Karel Badge
1.5 Methods in Karel
Video 1.5.1 Methods in Karel
Check for Understanding 1.5.2 Methods in Karel
Example 1.5.3 Turn Around
Exercise 1.5.4 Planting Bushes
Exercise 1.5.5 Mario Karel
1.6 Top Down Design and Decomposition in Karel
Video 1.6.1 Top Down Design and Decomposition in Karel
Check for Understanding 1.6.2 Top Down Design and Decomposition
Example 1.6.3 Hurdle Karel
Exercise 1.6.4 The Two Towers
Exercise 1.6.5 Planting Flowers
1.7 Commenting Your Code
Video 1.7.1 Commenting Your Code
Check for Understanding 1.7.2 Commenting Your Code
Example 1.7.3 Hurdle Karel (Comments)
Exercise 1.7.4 The Two Towers + Comments
1.8 Abstraction
Video 1.8.1 Abstraction
Check for Understanding 1.8.2 Abstraction Quiz
Example 1.8.3 Abstracting Away buildTower
Free Response 1.8.4 Abstracting Your Day
Free Response 1.8.5 Reflection: Abstraction
Free Response 1.8.6 Reflection: Abstraction in Karel
1.9 Super Karel
Video 1.9.1 Super Karel
Check for Understanding 1.9.2 Super Karel
Example 1.9.3 Hurdle Karel (with SuperKarel)
Exercise 1.9.4 The Two Towers + SuperKarel
Badge 1.9.5 Super Karel Badge
1.10 For Loops
Video 1.10.1 For Loops
Check for Understanding 1.10.2 For Loops
Example 1.10.3 Repeated Move
Example 1.10.4 Put Down Tennis Balls
Exercise 1.10.5 Marathon Karel
Exercise 1.10.6 Take 'em All
Exercise 1.10.7 Dizzy Karel
Exercise 1.10.8 For Loop Square
Exercise 1.10.9 Planting Flowers
Exercise 1.10.10 Lots of Hurdles
1.11 While Loops in Karel
Video 1.11.1 While Loops in Karel
Check for Understanding 1.11.2 While Loops in Karel
Example 1.11.3 Move to Wall
Exercise 1.11.4 Follow The Yellow Ball Road
Exercise 1.11.5 Just Keep Spinning
Exercise 1.11.6 Lay Row of Tennis Balls
Exercise 1.11.7 Big Tower
1.12 If Statements
Video 1.12.1 If Statements
Check for Understanding 1.12.2 If Statements Quiz
Example 1.12.3 If Statements
Example 1.12.4 Safe Take Ball
Exercise 1.12.5 Is There a Ball?
1.13 If/Else Statements
Video 1.13.1 If/Else Statements
Check for Understanding 1.13.2 If/Else Statements
Example 1.13.3 Flip Karel
Exercise 1.13.4 Fix It Karel
Exercise 1.13.5 Invert
Badge 1.13.6 Conditional Karel Badge
1.14 Control Structures Example
Video 1.14.1 Control Structures Example
Check for Understanding 1.14.2 Control Structures Example
Example 1.14.3 Cleanup Karel
Exercise 1.14.4 Random Hurdles
Exercise 1.14.5 Fix It Karel
1.15 More Karel Examples and Testing
Video 1.15.1 More Karel Examples and Testing
Example 1.15.2 Move Tennis Ball Stack
Example 1.15.3 Climbing Karel
1.16 How to Indent Your Code
Video 1.16.1 How to Indent Your Code
Check for Understanding 1.16.2 How to Indent Your Code
Example 1.16.3 Dance and Clean Karel
Exercise 1.16.4 Diagonal
Exercise 1.16.5 Staircase
Badge 1.16.6 Karel Exercises Badge
1.17 What is Code
Video 1.17.1 What is Code?
Connection 1.17.2 What is Software
Free Response 1.17.3 Respond: What is Software
1.18 Uses of Programs
Video 1.18.1 Uses of Programs
Connection 1.18.2 Why Should You Learn to Program?
Free Response 1.18.3 Reflection: Learning to Program
Free Response 1.18.4 Reflection: Programs in Your Life
Free Response 1.18.5 Reflection: Future Programs
Free Response 1.18.6 Task: Computing Innovations
Connection 1.18.7 Case Study: Mob Programming
Free Response 1.18.8 Case Study: Mob Programming
1.19 Karel Challenges
Challenge 1.19.1 Fetch
Challenge 1.19.2 Racing Karel
Challenge 1.19.3 Tower Builder
Challenge 1.19.4 Super Cleanup Karel
Challenge 1.19.5 Double Tennis Balls
Challenge 1.19.6 Midpoint Karel
Badge 1.19.7 Karel Challenges Badge
1.20 Introduction to Programming in Java Quiz
Unit Quiz 1.20.1 Introduction to Programming in Java Quiz Unit 1
2. Design Thinking
2.1 Intro to Design Thinking
Video 2.1.1 Intro to Design Thinking
Check for Understanding 2.1.2 Intro to Design Thinking
Free Response 2.1.3 User Interface Scavenger Hunt
Connection 2.1.4 Case Study: Helping Blind People See
Free Response 2.1.5 Case Study Responses
Connection 2.1.6 Crash Course: Empathize
Free Response 2.1.7 Empathize Notes
Connection 2.1.8 Crash Course: Define
Free Response 2.1.9 Problem Statement
Connection 2.1.10 Crash Course: Ideate
Free Response 2.1.11 Ideate Notes
Connection 2.1.12 Crash Course: Prototype and Test
Free Response 2.1.13 Testing Notes
Free Response 2.1.14 Topic Brainstorm
Free Response 2.1.15 Narrowing Down Topics
2.2 Empathy
Video 2.2.1 Empathy
Check for Understanding 2.2.2 Empathy Quiz
Connection 2.2.3 A Cafeteria Designed for Me
Free Response 2.2.4 A Cafeteria Designed for Me
Connection 2.2.5 Accessibility
Free Response 2.2.6 Accessibility Tips
Free Response 2.2.7 Accessibility: Designing for ALL
Connection 2.2.8 How to Interview
Free Response 2.2.9 How to Interview
Free Response 2.2.10 User Interview
2.3 Define
Video 2.3.1 Define
Check for Understanding 2.3.2 Define Quiz
Connection 2.3.3 Make a Composite Character Profile
Free Response 2.3.4 Composite Character Profile
Free Response 2.3.5 Point-of-View Statement Brainstorm
Free Response 2.3.6 POV Statement
2.4 Ideate
Video 2.4.1 Ideate
Check for Understanding 2.4.2 Ideate Quiz
Connection 2.4.3 Stoke
Free Response 2.4.4 Get Stoked
Connection 2.4.5 Brainstorming Tips
Free Response 2.4.6 Ideate!
2.5 Prototype
Video 2.5.1 Prototype
Check for Understanding 2.5.2 Prototype Quiz
Connection 2.5.3 Brainstorm Selection
Free Response 2.5.4 Harvest Ideas from the Brainstorm
Connection 2.5.5 Wizard of Oz Prototyping
Connection 2.5.6 Example Wizard of Oz Paper Prototype
Free Response 2.5.7 Make Your Paper Prototypes!
2.6 Test
Video 2.6.1 Test
Check for Understanding 2.6.2 Testing Quiz
Connection 2.6.3 Testing with Users
Connection 2.6.4 Example: How to User Test
Free Response 2.6.5 How to User Test Responses
Connection 2.6.6 Example: How NOT to User Test
Free Response 2.6.7 How NOT to User Test Responses
Free Response 2.6.8 Test Prototype 1
Free Response 2.6.9 Test Prototype 2
Free Response 2.6.10 Improve Your Prototype
3. Project: Put it in Writing!
3.1 Context for Change
Free Response 3.1.1 Company Development
Notes 3.1.2 Context for Change
Connection 3.1.3 Matilda Jane Case Study
Free Response 3.1.4 Case Study Reflection
Video 3.1.5 Implementing New IT Systems
Connection 3.1.6 Implementation Rubric
3.2 Planning for System Implementation
Video 3.2.1 Planning for System Implementation
Connection 3.2.2 Developing an Implementation Plan
Connection 3.2.3 How Spotify Migrated to the Cloud
Free Response 3.2.4 Spotify Migration Reflection
Connection 3.2.5 Software as a Service (Saas)
Notes 3.2.6 Data Migration Challenges
Notes 3.2.7 Testing Your New System
Free Response 3.2.8 Implementation Plan Link
3.3 Preparing Users
Notes 3.3.1 Preparing Users Overview
Connection 3.3.2 User Documentation
Free Response 3.3.3 User Documentation Reflection
Video 3.3.4 Change Management
Connection 3.3.5 Preparing Users: Change Management Plan
Free Response 3.3.6 Change Management Plan Link
3.4 Maintaining the System
Notes 3.4.1 Maintaining the System Overview
Connection 3.4.2 Saas and Automatic Updates
Free Response 3.4.3 SaaS and Automatic Updates Response
Connection 3.4.4 Data Loss: Causes, Impacts, and Prevention
Free Response 3.4.5 Data Loss Reflection
Notes 3.4.6 Redundancy and Failover Systems
Free Response 3.4.7 Data Loss Prevention Plan
Free Response 3.4.8 Real World Challenge #1
Free Response 3.4.9 Real World Challenge #2
4. Digital Information
4.1 Intro to Digital Information
Video 4.1.1 What is Digital Information?
Check for Understanding 4.1.2 What is Digital Information Quiz
Example 4.1.3 Fast Food Menu
Example 4.1.4 DNA
Free Response 4.1.5 Reflection: Encodings Everywhere
4.2 Number Systems
Video 4.2.1 Number Systems
Notes 4.2.2 Number Base Tool
Check for Understanding 4.2.3 Number Systems Quiz
Video 4.2.4 Decimal to Binary
Check for Understanding 4.2.5 Decimal to Binary Quiz
Exercise 4.2.6 Binary Game
Exercise 4.2.7 Overflow Error
Example 4.2.8 More Overflow Errors
4.3 Encoding Text with Binary
Video 4.3.1 Encoding Text with Binary
Check for Understanding 4.3.2 Encoding Text with Binary Quiz
Example 4.3.3 Morse Code
Example 4.3.4 Decoding a Binary Message
Example 4.3.5 2-bit Custom Encoding
Example 4.3.6 Bits to ASCII
Exercise 4.3.7 Hello Karel in Bits
Exercise 4.3.8 Create your own Encoding
Exercise 4.3.9 Text to Binary
Badge 4.3.10 Encoding Badge
4.4 Hexadecimal
Video 4.4.1 Hexadecimal
Check for Understanding 4.4.2 Hexadecimal Quiz
Example 4.4.3 Hexadecimal to Decimal
Exercise 4.4.4 Binary to Hex Game
4.5 Pixel Images
Video 4.5.1 Pixel Images
Check for Understanding 4.5.2 Pixel Images Quiz
Resource 4.5.3 Creating Pixel Images
Example 4.5.4 CodeHS Logo
Exercise 4.5.5 Checkerboard
Exercise 4.5.6 Ladder
Exercise 4.5.7 Create an Image!
4.6 Pixel Colors!
Video 4.6.1 Pixel Colors
Check for Understanding 4.6.2 Pixel Colors Quiz
Example 4.6.3 Colors in Bits
Example 4.6.4 Colors in Text
Example 4.6.5 Colors in RGB
Exercise 4.6.6 Exploring RGB
Exercise 4.6.7 Making Yellow
Exercise 4.6.8 Rainbow
Exercise 4.6.9 Create a Color Image!
4.7 Data Compression
Video 4.7.1 Data Compression
Check for Understanding 4.7.2 Data Compression Quiz
Video 4.7.3 Run Length Encoding
Check for Understanding 4.7.4 Run Length Encoding Quiz
Example 4.7.5 Run Length Encoding
Example 4.7.6 Custom Image Compression
Free Response 4.7.7 Respond: Custom Image Compression
4.8 Lossy Compression
Video 4.8.1 Lossy Compression
Check for Understanding 4.8.2 Lossy Compression Quiz
Example 4.8.3 Remove the Vowels
Exercise 4.8.4 Decreasing Resolution
Connection 4.8.5 Analog to Digital
Free Response 4.8.6 Respond: Analog to Digital
4.9 Digital Information Quiz
Unit Quiz 4.9.1 Digital Information Quiz
5. Networking
5.1 Welcome to the Internet
Video 5.1.1 Welcome to the Internet
Check for Understanding 5.1.2 Welcome to the Internet Quiz
Free Response 5.1.3 Reflection: The Internet and You
Video 5.1.4 Internet Addresses
Check for Understanding 5.1.5 Internet Addresses Quiz
Free Response 5.1.6 Free Response: The Need for Addresses
Check for Understanding 5.1.7 4-bit Addresses
Free Response 5.1.8 Free Response: IPv4 vs IPv6
5.2 DNS and Routing
Video 5.2.1 DNS
Check for Understanding 5.2.2 DNS Quiz
Connection 5.2.3 How Does DNS Work?
Free Response 5.2.4 Respond: How Does DNS Work?
Video 5.2.5 Routing
Check for Understanding 5.2.6 Routing Quiz
Free Response 5.2.7 Free Response: Redundancy
Traceroute 5.2.8 Route Tracing
5.3 Packets and Protocols
Video 5.3.1 Packets and Protocols
Check for Understanding 5.3.2 Packets and Protocols Quiz
Resource 5.3.3 Passing Notes
Connection 5.3.4 How the Internet Works
Free Response 5.3.5 The Story of the Internet
5.4 Protocols and Standards
Video 5.4.1 Protocols
Check for Understanding 5.4.2 Protocols Quiz
Video 5.4.3 Standards
Check for Understanding 5.4.4 Standards Quiz
Connection 5.4.5 The New Wireless Standard
Connection 5.4.6 801.11ax
Free Response 5.4.7 801.11ax FR
5.5 Private Networks
Video 5.5.1 IP and MAC Addresses
Check for Understanding 5.5.2 IP and MAC Addresses Quiz
Example 5.5.3 Intranet Permissions
Free Response 5.5.4 Coffee Shop: Design an Intranet
Video 5.5.5 DMZs and VPNs
Check for Understanding 5.5.6 DMZs and VPNs Quiz
Connection 5.5.7 Protecting Privacy with VPNs
Free Response 5.5.8 Protecting Privacy with VPNs
Free Response 5.5.9 Coffee Shop: Network Plan
Free Response 5.5.10 Coffee Shop: Network Diagram
Video 5.5.11 SOHO Network
Example 5.5.12 Network Topologies
5.6 Cybersecurity
Video 5.6.1 Cybersecurity
Check for Understanding 5.6.2 Cybersecurity Quiz
Example 5.6.3 You Can Be Tracked!
Connection 5.6.4 Website Cookies
Connection 5.6.5 Password Strength
Free Response 5.6.6 Reflection: Password Strength
Example 5.6.7 Multifactor Authentication
Free Response 5.6.8 Reflection: PII
Example 5.6.9 Phishing Simulator
Connection 5.6.10 Rogue Access Points
Survey 5.6.11 Mindsets
5.7 Advanced Devices
Video 5.7.1 Advanced Devices
Check for Understanding 5.7.2 Advanced Devices Quiz
Connection 5.7.3 Network Administrator Career
Free Response 5.7.4 Network Administrator Career
Free Response 5.7.5 Choosing the Best Devices
Free Response 5.7.6 Network Diagram
5.8 The Impact of the Internet
Video 5.8.1 The Impact of the Internet
Check for Understanding 5.8.2 The Impact of the Internet Quiz
Free Response 5.8.3 Reflection: Internet Impact
Connection 5.8.4 Crucial Steps to Close the Digital Divide
Free Response 5.8.5 Reflection: Closing the Digital Divide
Connection 5.8.6 Pokemon Go: Unintended Effects
Free Response 5.8.7 Reflection: Unintended Effects
5.9 The Internet Quiz
Unit Quiz 5.9.1 Networking Fundamentals Quiz (Duplicate)
Unit Quiz 5.9.2 Advanced Networking Quiz (Duplicate)
5.10 Networking Quiz
Unit Quiz 5.10.1 Networking Quiz
6. Computer Organization
6.1 Internal Components
Video 6.1.1 Internal Components
Check for Understanding 6.1.2 Internal Components
Connection 6.1.3 Build a Computer
Free Response 6.1.4 Build a Computer
Example 6.1.5 Test Your Brain's RAM!
Free Response 6.1.6 Test Your Brain's RAM!
Connection 6.1.7 The Machine Instruction Cycle
6.2 Peripheral Devices
Video 6.2.1 Peripheral Devices
Check for Understanding 6.2.2 Peripheral Devices
Free Response 6.2.3 Personalized Peripherals
Free Response 6.2.4 IT Help
Free Response 6.2.5 Your Ideal Computer Setup
6.3 Network Devices
Video 6.3.1 Network Devices
Check for Understanding 6.3.2 Network Devices
Connection 6.3.3 Speed Test
Free Response 6.3.4 Speed Test
Connection 6.3.5 Fiber Optics Bend Light!
Free Response 6.3.6 Fiber Optics Bend Light!
Connection 6.3.7 Ethernet Standards
Free Response 6.3.8 Ethernet Standards
Free Response 6.3.9 Network Troubleshooting
6.4 Storage Options
Video 6.4.1 Storage Options
Check for Understanding 6.4.2 Storage Options Quiz
Connection 6.4.3 Security of Cloud Storage
Free Response 6.4.4 Security of Cloud Storage
Free Response 6.4.5 Storage Suggestions
6.5 Network Options
Video 6.5.1 Network Options
Check for Understanding 6.5.2 Network Options Quiz
Connection 6.5.3 What is an SSID?
Free Response 6.5.4 What is an SSID?
Free Response 6.5.5 Wireless Network Setup
6.6 Operating Systems
Video 6.6.1 Operating Systems
Check for Understanding 6.6.2 Operating Systems Quiz
Example 6.6.3 Detect My OS
Connection 6.6.4 Upgrading a Mac OS
Example 6.6.5 Windows OS Installation Simulation
Free Response 6.6.6 Installing an OS
6.7 Software and Applications
Video 6.7.1 Software and Applications
Check for Understanding 6.7.2 Software and Applications Quiz
Example 6.7.3 Spreadsheet Simulation
Example 6.7.4 Messaging Simulation
Example 6.7.5 Kanban Board Simulation
Free Response 6.7.6 Software Simulations
6.8 Browser Configuration
Video 6.8.1 Browser Configuration
Check for Understanding 6.8.2 Browser Configuration
Connection 6.8.3 Cached CodeHS
Free Response 6.8.4 Cached CodeHS
Example 6.8.5 Is Your Popup Blocker On?
Free Response 6.8.6 Browser Extensions Lab
6.9 Sequential, Parallel & Distributed Computing
Video 6.9.1 Computer Processing Operations
Check for Understanding 6.9.2 Computer Processing Operations Quiz
Resource 6.9.3 Sequential vs. Parallel Activity
Free Response 6.9.4 Free Response: Sequential vs. Parallel
6.10 Computer Organization Quiz
Unit Quiz 6.10.1 Computer Organization Quiz
7. Primitive Types
7.1 Why Programming? Why Java?
Video 7.1.1 Printing in Java
Check for Understanding 7.1.2 Printing in Java
Example 7.1.3 Hello World
Example 7.1.4 Printing Multiple Lines
Exercise 7.1.5 Welcome Program
Exercise 7.1.6 ASCII Art
Exercise 7.1.7 Fixing a Paragraph
Exercise 7.1.8 Heating Up
Exercise 7.1.9 Personal Timeline
Notes 7.1.10 Why Java?
7.2 Variables and Data Types
Video 7.2.1 Variables and Types
Check for Understanding 7.2.2 Variables and Types
Example 7.2.3 Variables
Example 7.2.4 Using Final
Exercise 7.2.5 Our First Integer
Video 7.2.6 Variables and Types Pt. 2
Check for Understanding 7.2.7 Variables and Types Pt. 2
Example 7.2.8 Swapping Two Values
Exercise 7.2.9 Answering Questions
Exercise 7.2.10 Team Rankings
7.3 Expressions and Assignment Statements
Video 7.3.1 Arithmetic Expressions
Check for Understanding 7.3.2 Arithmetic Expressions
Example 7.3.3 Calculator
Example 7.3.4 Temperature Conversion
Example 7.3.5 Tricky Java
Exercise 7.3.6 Weight of a Pyramid
Exercise 7.3.7 Add Fractions
Exercise 7.3.8 Freely Falling Bodies
7.4 Compound Assignment Operators
Video 7.4.1 Compound Assignment Operators
Check for Understanding 7.4.2 Compound Assignment Operators
Example 7.4.3 All Functions Calculator
Example 7.4.4 Increase/Decrease by 1
Exercise 7.4.5 Work Shift
Exercise 7.4.6 My Age
7.5 User Input
Video 7.5.1 User Input
Check for Understanding 7.5.2 User Input Quiz
Example 7.5.3 Using the Scanner Class
Example 7.5.4 Increase/Decrease by 1 (User Input)
Example 7.5.5 int Before String
Exercise 7.5.6 My Age (User Input)
Exercise 7.5.7 Night Out
Exercise 7.5.8 MLA Citation
7.6 Casting and Ranges of Variables
Video 7.6.1 Casting
Check for Understanding 7.6.2 Casting
Example 7.6.3 Casting
Exercise 7.6.4 Casting to an Int
Exercise 7.6.5 Casting to a Double
Example 7.6.6 Casting Order of Operations
Example 7.6.7 Rounding Using Casting
Exercise 7.6.8 Movie Ratings
Example 7.6.9 Implicit Casting
Example 7.6.10 Min and Max Values of Integers
Exercise 7.6.11 Integer Overflow
7.7 Primitive Types Quiz
Unit Quiz 7.7.1 Primitive Types Quiz
8. Using Objects
8.1 Objects: Instances of Classes
Video 8.1.1 Objects: Instances of Classes
Check for Understanding 8.1.2 Quiz: Classes and Objects
Video 8.1.3 Multi-File Exercises in Java
Example 8.1.4 Rectangle Skeleton
Example 8.1.5 GrilledCheese Skeleton
Example 8.1.6 Shark Skeleton
Free Response 8.1.7 Free Response: What instance variables?
Exercise 8.1.8 Pizza Instance Variables
Free Response 8.1.9 Phone Skeleton
8.2 Creating and Storing Objects (Instantiation)
Video 8.2.1 Creating and Storing Objects
Check for Understanding 8.2.2 Quiz: Constructors
Example 8.2.3 The Rectangle Class
Example 8.2.4 The Point Class
Example 8.2.5 The Student Class
Exercise 8.2.6 Using the Rectangle Class
Exercise 8.2.7 Student GPA Field
Exercise 8.2.8 Instance Variables for Your Dog
Exercise 8.2.9 Pizza Time!
Badge 8.2.10 Instantiation Badge
8.3 Overloading
Video 8.3.1 Method Overloading
Check for Understanding 8.3.2 Method Overloading Quiz
Example 8.3.3 Overloaded Rectangle
Example 8.3.4 Overloaded GrilledCheese
Example 8.3.5 Null Pointer Exception
Exercise 8.3.6 Plain Coffee
Exercise 8.3.7 Custom Piñatas
Exercise 8.3.8 Website Class
Exercise 8.3.9 Empty References
8.4 Calling a Void Method
Video 8.4.1 Calling a Void Method
Check for Understanding 8.4.2 Quiz: Void Methods
Example 8.4.3 Area of a Rectangle
Example 8.4.4 Program Flow
Exercise 8.4.5 Hello!
Exercise 8.4.6 Loose Change
Exercise 8.4.7 Chat Bot
Exercise 8.4.8 Greetings and Salutations
8.5 Calling a Void Method with Parameters
Video 8.5.1 Calling a Void Method with Parameters
Check for Understanding 8.5.2 Methods and Parameters
Example 8.5.3 Rectangle
Example 8.5.4 Moving a Point
Exercise 8.5.5 Using the Point Class
Example 8.5.6 Calculator
Exercise 8.5.7 Basketball Players
Exercise 8.5.8 More Operations
Exercise 8.5.9 Chat Bot 2.0
8.6 Calling a Non-void Method
Video 8.6.1 Calling a Non-void Method
Check for Understanding 8.6.2 Quiz: Non-Void Methods
Example 8.6.3 Rectangle
Example 8.6.4 Desks in a Room
Example 8.6.5 Activity Log
Exercise 8.6.6 Number Games
Exercise 8.6.7 Construction Costs
Exercise 8.6.8 How Far Away is ...?
8.7 String Objects
Video 8.7.1 String Objects
Check for Understanding 8.7.2 String Objects
Example 8.7.3 Immutable Strings
Example 8.7.4 String Concatenation
Example 8.7.5 Rectangle Dimensions
Example 8.7.6 Printing Equations
Exercise 8.7.7 Pretty Printing Operations
Exercise 8.7.8 Full Name
Exercise 8.7.9 QuoteMachine
8.8 String Methods
Video 8.8.1 String Methods
Check for Understanding 8.8.2 String Methods
Example 8.8.3 Bigger Strings?
Example 8.8.4 Chopping Strings
Example 8.8.5 Object Concatenation
Exercise 8.8.6 Speaking
Exercise 8.8.7 toString for Flowers
Exercise 8.8.8 Organizing Files
Exercise 8.8.9 Concatenating Fractions
Exercise 8.8.10 Word Games
8.9 Wrapper Classes: Integers and Doubles
Video 8.9.1 Wrapper Classes
Check for Understanding 8.9.2 Quiz: Wrapper Classes
Example 8.9.3 Creating Integers
Example 8.9.4 Using Doubles
Example 8.9.5 Autoboxing Example
Exercise 8.9.6 Order Up!
Exercise 8.9.7 Currency
Exercise 8.9.8 Guess the number!
8.10 Using the Math Class
Video 8.10.1 Using the Math Class
Check for Understanding 8.10.2 Quiz: Static Methods
Example 8.10.3 Using the Math Class
Example 8.10.4 Static Methods: Rectangle
Example 8.10.5 Generating Random Numbers
Exercise 8.10.6 Circle Area
Exercise 8.10.7 The Unit Circle
Exercise 8.10.8 Racing
Free Response 8.10.9 OOP vs Procedural Programming
8.11 Using Objects Quiz
Unit Quiz 8.11.1 Using Objects Quiz
9. Boolean Expressions and if Statements
9.1 Boolean Expressions and if Statements
Video 9.1.1 Comparison Operators
Check for Understanding 9.1.2 Comparison Operators
Example 9.1.3 Old Enough To Vote
Example 9.1.4 Grade Range
Example 9.1.5 Equality of Strings
Exercise 9.1.6 Number Order
Exercise 9.1.7 Sugar Tax
Exercise 9.1.8 Triple Double
9.2 if Statements and Control Flow
Video 9.2.1 If Statements
Check for Understanding 9.2.2 If Statements
Example 9.2.3 Can Vote
Example 9.2.4 Negative Numbers
Example 9.2.5 Rectangle
Exercise 9.2.6 Discounts
Exercise 9.2.7 Sweet or Unsweet?
Exercise 9.2.8 Cooking
Exercise 9.2.9 Rating
9.3 if-else Statements
Video 9.3.1 If-Else Statements
Check for Understanding 9.3.2 If-Else
Example 9.3.3 Bill with add tip
Example 9.3.4 Even and Odd
Exercise 9.3.5 Positive or Negative
Exercise 9.3.6 Battleships Move
Exercise 9.3.7 Ratings
Exercise 9.3.8 Player Score
9.4 else if Statements
Video 9.4.1 else-if Statements
Check for Understanding 9.4.2 else-if
Example 9.4.3 Add Tip
Example 9.4.4 Add Tip - 8 or 4 Customers
Example 9.4.5 Add Tip - 8, 4, 2 Customers
Exercise 9.4.6 Positive, Negative, or Zero
Exercise 9.4.7 Salmon Spawn
Exercise 9.4.8 Berries
Exercise 9.4.9 Battleships
9.5 Compound Boolean Expressions
Video 9.5.1 Compound Boolean Expressions
Check for Understanding 9.5.2 Logical Operators
Example 9.5.3 Light Switch
Example 9.5.4 Number in Range
Example 9.5.5 Pizza Slices
Exercise 9.5.6 Roller Coaster
Exercise 9.5.7 Compound Roller Coaster
Exercise 9.5.8 Divisibility
Exercise 9.5.9 Find the Minimum
9.6 Equivalent Boolean Expressions
Video 9.6.1 Equivalent Boolean Expressions
Check for Understanding 9.6.2 De Morgan's Laws
Example 9.6.3 De Morgan AND
Example 9.6.4 De Morgan OR
Exercise 9.6.5 Amusement Park
Exercise 9.6.6 Odd Numbers
Exercise 9.6.7 Odd and Even
Free Response 9.6.8 Odd and Even Free Response
9.7 Comparing Objects
Video 9.7.1 Comparing Objects
Check for Understanding 9.7.2 Comparing Objects
Example 9.7.3 Comparing Strings
Example 9.7.4 Comparing Rectangles
Example 9.7.5 Null Test
Example 9.7.6 Identify Aliases
Exercise 9.7.7 String Variable Trace
Free Response 9.7.8 String Trace
Exercise 9.7.9 Three Strings
Exercise 9.7.10 Comparing Circles
9.8 Boolean Expressions and if Statements Quiz
Unit Quiz 9.8.1 Boolean Expressions and If Statements Quiz
10. Iteration
10.1 Iteration
Video 10.1.1 While Loops
Check for Understanding 10.1.2 While Loops
Example 10.1.3 While Loop Countdown
Example 10.1.4 Get Down to One
Example 10.1.5 Running Average
Exercise 10.1.6 Making Taffy
Exercise 10.1.7 Guess the Number
Exercise 10.1.8 Divisibility
Exercise 10.1.9 Max and Min Values
10.2 For Loops
Video 10.2.1 For Loops
Check for Understanding 10.2.2 For Loops
Example 10.2.3 For Loop
Example 10.2.4 Countdown
Example 10.2.5 Count By Twos
Exercise 10.2.6 Print the Odds
Exercise 10.2.7 Repeat 100 Times
Exercise 10.2.8 Replace WHILE with FOR Loop
Exercise 10.2.9 Replace FOR Loop with WHILE Loop
Exercise 10.2.10 Multiplication Table
10.3 Developing Algorithms Using Strings
Video 10.3.1 Developing Algorithms Using Strings
Check for Understanding 10.3.2 Developing Algorithms Using Strings
Example 10.3.3 Traversing Strings
Example 10.3.4 Replace Characters
Example 10.3.5 Reverse String
Exercise 10.3.6 Replace Letter
Exercise 10.3.7 Password Checker
Exercise 10.3.8 Finding Palindromes
Exercise 10.3.9 Fixing Grammar
Exercise 10.3.10 Teen Talk
Badge 10.3.11 String Processing Badge
10.4 Nested Iteration
Video 10.4.1 Nested Iteration
Check for Understanding 10.4.2 Nested Iteration
Example 10.4.3 Make a Rectangle
Example 10.4.4 Nested Loop Iteration Counts
Example 10.4.5 Inverted Triangle
Exercise 10.4.6 Upright Number Triangle
Exercise 10.4.7 Make a Tree
Exercise 10.4.8 Multiplication Table
10.5 Informal Code Analysis
Video 10.5.1 Informal Code Analysis
Check for Understanding 10.5.2 Informal Code Analysis
Example 10.5.3 Loop Execution Count
Example 10.5.4 While Loop Time
Example 10.5.5 For Loop Time
Example 10.5.6 Fundamental versus Compound Operations
Free Response 10.5.7 Time Comparisons
Exercise 10.5.8 Improving findChar Speed
Example 10.5.9 Improving findChar Speed Check
Free Response 10.5.10 findChar Speed Reflection
10.6 Iteration Quiz
Unit Quiz 10.6.1 Iteration Quiz
11. Writing Classes
11.1 Writing Classes
Video 11.1.1 Anatomy of Classes
Check for Understanding 11.1.2 Quiz: Access Modifiers
Example 11.1.3 Rectangle Getter Methods
Exercise 11.1.4 Access for DNA Class
Exercise 11.1.5 Access for Employee Class
Exercise 11.1.6 Fixing Circle
11.2 Constructors
Video 11.2.1 Constructors
Check for Understanding 11.2.2 Quiz: Constructors
Example 11.2.3 SuperHero Class
Example 11.2.4 Initializing an Object without a Constructor
Exercise 11.2.5 Batting Average
Exercise 11.2.6 Dog Class
Exercise 11.2.7 Student Overload
Exercise 11.2.8 SchoolClub Class
11.3 Documentation with Comments
Video 11.3.1 Documentation with Comments
Check for Understanding 11.3.2 Quiz: Comments
Example 11.3.3 Comments for Debugging
Example 11.3.4 Power Class with Comments
Exercise 11.3.5 Commenting Activity Tracker
Exercise 11.3.6 Commenting Activity Log
Exercise 11.3.7 C.Y.O.A. Layout
Exercise 11.3.8 C.Y.O.A. Finishing the story
Connection 11.3.9 UML Diagrams
11.4 Accessor Methods
Video 11.4.1 Accessor Methods
Check for Understanding 11.4.2 Quiz: Accessors
Example 11.4.3 Student Getter Methods
Example 11.4.4 SuperHero Class with Secret Identity
Exercise 11.4.5 Text Messages Getter Methods
Exercise 11.4.6 Full Dragon Class
Exercise 11.4.7 A Different Dragon Class
Exercise 11.4.8 A Chef's Best Meal
11.5 Mutator Methods
Video 11.5.1 Mutator Methods
Check for Understanding 11.5.2 Quiz: Mutators
Example 11.5.3 SuperHero Class with Mutator Methods
Example 11.5.4 Student Setters
Exercise 11.5.5 Rectangle class
Exercise 11.5.6 Full Fraction Class
Exercise 11.5.7 Weekly Routine
11.6 Writing Methods
Video 11.6.1 Writing Methods
Check for Understanding 11.6.2 Quiz: Writing Methods
Example 11.6.3 Triangle Class
Example 11.6.4 Baseball Player Class
Exercise 11.6.5 Distance Conversions
Exercise 11.6.6 Food App Demo
Exercise 11.6.7 Car Class
Resource 11.6.8 Combination Lock FRQ
11.7 Static Variables and Methods
Video 11.7.1 Static Variables and Methods
Check for Understanding 11.7.2 Quiz: Static Methods
Example 11.7.3 Static SuperHero
Example 11.7.4 Static Variables: Circle
Exercise 11.7.5 Randomizer Class
Exercise 11.7.6 Rock, Paper, Scissors!
Exercise 11.7.7 How Many Players in the Game?
11.8 Scope and Access
Video 11.8.1 Scope and Access
Check for Understanding 11.8.2 Quiz: Local Variables and Scope
Example 11.8.3 Instance Variable Scope
Example 11.8.4 Local Variable Scope
Example 11.8.5 Variable Shadowing
Example 11.8.6 Method Decomposition with Trivia
Exercise 11.8.7 Scope
Exercise 11.8.8 Which Variables Exist?
Exercise 11.8.9 Broken Calculator
11.9 this Keyword
Video 11.9.1 this Keyword
Check for Understanding 11.9.2 Quiz: this Keyword
Example 11.9.3 Rectangles and this
Example 11.9.4 Student and this
Exercise 11.9.5 Write Your Own CodeHS
Exercise 11.9.6 Song Class
Exercise 11.9.7 Fraction Math
11.10 Ethical and Social Implications of Computing
Video 11.10.1 Implications of Computing Systems
Free Response 11.10.2 Computing and Your Life
Check for Understanding 11.10.3 Quiz: Ethical and Social Impact
Connection 11.10.4 ACM General Ethical Principles
Free Response 11.10.5 ACM General Ethical Principles
Connection 11.10.6 Bias in Facial Recognition
Free Response 11.10.7 Bias in Facial Recognition
Connection 11.10.8 Self-driving Cars
Free Response 11.10.9 Self-driving Cars
11.11 Writing Classes Quiz
Unit Quiz 11.11.1 Writing Classes Quiz
Example 11.11.2 Using the Rectangle Class as a Client
12. Classes and Object-Oriented Programming
12.1 Introduction to Classes and Objects
Video 12.1.1 What is a Class?
Check for Understanding 12.1.2 Quiz: Classes and Objects
Example 12.1.3 The Rectangle Class
Example 12.1.4 The Point Class
Example 12.1.5 The Student Class
Exercise 12.1.6 Using the Rectangle Class
Exercise 12.1.7 Calling A Method
Exercise 12.1.8 Using the Point Class
Exercise 12.1.9 Using the Student Class
12.2 Classes vs. Objects
Video 12.2.1 Classes and Objects
Check for Understanding 12.2.2 Classes vs. Objects vs. Instances
Example 12.2.3 Classes, Objects, and Instances
Example 12.2.4 Creating Rectangle Objects
Exercise 12.2.5 Text Messages
12.3 Using a Class as a Client
Video 12.3.1 How to Use a Class
Check for Understanding 12.3.2 Quiz: Client of a Class
Example 12.3.3 Using the Rectangle Class as a Client
Example 12.3.4 Using the Randomizer Class as a Client
Exercise 12.3.5 Coin Flips
Exercise 12.3.6 Longest Streak
Example 12.3.7 Testing the GeoLocation Class
Exercise 12.3.8 How Far Away is ...?
Badge 12.3.9 Client Badge
12.4 Writing Classes
Video 12.4.1 Constructors
Check for Understanding 12.4.2 Quiz: Constructors
Example 12.4.3 Rectangle toString
Example 12.4.4 Student toString
Exercise 12.4.5 toString for Flowers
Exercise 12.4.6 Instance Variables for Your Dog
Exercise 12.4.7 Student GPA Field
Free Response 12.4.8 Free Response: What instance variables?
Exercise 12.4.9 Pizza Time!
Exercise 12.4.10 Fractions
12.5 Writing Classes and Instance Methods
Video 12.5.1 Writing Instance Methods
Check for Understanding 12.5.2 Quiz: Writing Methods
Example 12.5.3 Area of a Rectangle
Example 12.5.4 Moving a Point
Exercise 12.5.5 Writing getPerimeter()
Exercise 12.5.6 Honors Students
Exercise 12.5.7 Batting Average
Exercise 12.5.8 Distance in Kilometers
Resource 12.5.9 Combination Lock FRQ
12.6 Getter and Setter Methods
Video 12.6.1 Getter and Setter Methods
Check for Understanding 12.6.2 Quiz: Getter and Setter Methods
Example 12.6.3 Rectangle Getter Methods
Example 12.6.4 Student Getter Methods
Exercise 12.6.5 Text Messages Getter Methods
Exercise 12.6.6 Fractions Getter/Setter Methods
Exercise 12.6.7 Full Fraction Class
Exercise 12.6.8 Full Dragon Class
Exercise 12.6.9 A Different Dragon Class
12.7 Class Methods and Class Variables
Video 12.7.1 Static Methods and Variables (Class Methods and Class Variables)
Check for Understanding 12.7.2 Quiz: Static Methods
Example 12.7.3 Student Class Variables and Methods
Example 12.7.4 Using the Math Class
Example 12.7.5 Using Randomizer
Example 12.7.6 Static Variables: Circle
Exercise 12.7.7 The Unit Circle
Exercise 12.7.8 How Many Players in the Game?
Exercise 12.7.9 Circle Area, another way
Practice 12.7.10 Rock, Paper, Scissors: Get Winner
Exercise 12.7.11 Rock, Paper, Scissors!
12.8 Wrapper Classes
Video 12.8.1 Wrapper Classes
Check for Understanding 12.8.2 Quiz: Wrapper Classes
Example 12.8.3 Creating Integers
Example 12.8.4 Using Doubles
Example 12.8.5 Autoboxing Example
Exercise 12.8.6 Order Up!
Exercise 12.8.7 Currency
Exercise 12.8.8 Guess the number!
12.9 Method Overloading
Video 12.9.1 Method Overloading
Check for Understanding 12.9.2 Method Overloading Quiz
Example 12.9.3 Sum Method Overloading
Example 12.9.4 Constructor Overloading
Exercise 12.9.5 Average Method Overloading
Badge 12.9.6 Overloading Badge
12.10 Local Variables and Scope
Video 12.10.1 Local Variables and Scope
Check for Understanding 12.10.2 Local Variables and Scope Quiz
Example 12.10.3 Instance Variable Scope
Example 12.10.4 Local Variable Scope
Example 12.10.5 Variable Shadowing
Exercise 12.10.6 Which Variables Exist?
12.11 Key Terms for Classes
Video 12.11.1 Key Terms for Classes
Check for Understanding 12.11.2 Quiz: This Keyword
Example 12.11.3 Rectangles and this
Exercise 12.11.4 Batteries
Exercise 12.11.5 Write Your Own CodeHS
12.12 Objects vs Primitives
Video 12.12.1 Objects vs Primitives
Check for Understanding 12.12.2 Objects vs Primitives Quiz
Example 12.12.3 Comparing Rectangles
Example 12.12.4 Changing Dogs
Example 12.12.5 Null Pointer Exception
Free Response 12.12.6 Objects vs Primitives
Exercise 12.12.7 Comparing Circles
12.13 Inheritance
Video 12.13.1 Inheritance
Check for Understanding 12.13.2 Quiz: Subclasses and Superclasses
Example 12.13.3 Square is a Rectangle
Exercise 12.13.4 Clothing Store
Badge 12.13.5 Inheritance Badge
12.14 Class Design and Abstract Classes
Video 12.14.1 Class Design and Abstract Classes
Check for Understanding 12.14.2 Quiz: Class Design
Example 12.14.3 The Shape Hierarchy
Example 12.14.4 Classes for Dessert
Exercise 12.14.5 Finding The Perimeters
12.15 Polymorphism
Video 12.15.1 Polymorphism
Check for Understanding 12.15.2 Quiz: Polymorphism
Example 12.15.3 Animal Sounds
Example 12.15.4 Shape Areas
Exercise 12.15.5 Fun with Solids
12.16 Object Superclass
Video 12.16.1 Object Superclass
Check for Understanding 12.16.2 Quiz: Object Superclass
Example 12.16.3 Default Values
Example 12.16.4 Override toString
Example 12.16.5 Override equals
Exercise 12.16.6 Equal?
Exercise 12.16.7 Equals? - Part 2
Exercise 12.16.8 Equal Rectangles
Exercise 12.16.9 2D Array Tester
12.17 Interfaces
Video 12.17.1 Interfaces
Check for Understanding 12.17.2 Quiz: Interfaces
Example 12.17.3 Comparable Interface
Example 12.17.4 Summable Interface
Exercise 12.17.5 Fraction is Comparable
Exercise 12.17.6 City is Summable
Badge 12.17.7 Classes and Object-Oriented Programming Badge
12.18 Ethical and Social Implications of Computing
Video 12.18.1 Implications of Computing Systems
Free Response 12.18.2 Computing and Your Life
Check for Understanding 12.18.3 Quiz: Ethical and Social Impact
Connection 12.18.4 ACM General Ethical Principles
Free Response 12.18.5 ACM General Ethical Principles
Connection 12.18.6 Bias in Facial Recognition
Free Response 12.18.7 Bias in Facial Recognition
Connection 12.18.8 Self-driving Cars
Free Response 12.18.9 Self-driving Cars
12.19 Classes and Object-Oriented Programming Quiz
Unit Quiz 12.19.1 Classes and Object-Oriented Programming Quiz
13. Array
13.1 Array
Video 13.1.1 Introduction to Arrays
Check for Understanding 13.1.2 Quiz: Arrays
Example 13.1.3 Making an Array
Example 13.1.4 Make an Empty Array
Example 13.1.5 Indexing Into an Array
Exercise 13.1.6 Our First Array
Exercise 13.1.7 Set Scores
Exercise 13.1.8 Last Element in Array
Exercise 13.1.9 Snap Shot Splash Screen
13.2 Traversing Arrays
Video 13.2.1 Using Arrays
Check for Understanding 13.2.2 Quiz: Using Arrays
Example 13.2.3 Iterating Over An Array - For Loop
Example 13.2.4 Iterating Over An Array - While Loop
Example 13.2.5 Array Out of Bounds
Example 13.2.6 Finding a Target Value
Exercise 13.2.7 Print Array
Exercise 13.2.8 Print Odd Array Indices
Exercise 13.2.9 Find Index of a String
Free Response 13.2.10 Thinking Ahead: Fibonacci Sequence
Exercise 13.2.11 Fibonacci Sequence
13.3 Enhanced for Loop for Arrays
Video 13.3.1 Enhanced For Loop for Arrays
Check for Understanding 13.3.2 Enhanced For Loop for Arrays
Example 13.3.3 Enhanced For Loop
Example 13.3.4 Classroom Array
Example 13.3.5 Updating Values in a Loop
Exercise 13.3.6 Print Odds
Exercise 13.3.7 Largest Value
Exercise 13.3.8 Classroom Array
Exercise 13.3.9 Array Average
13.4 Developing Algorithms Using Arrays
Video 13.4.1 Developing Algorithms Using Arrays
Check for Understanding 13.4.2 Developing Algorithms Using Arrays
Example 13.4.3 Finding the Minimum Value
Example 13.4.4 Reordering an Array
Example 13.4.5 Finding Duplicates
Exercise 13.4.6 Find the Median
Exercise 13.4.7 Find the Last Multiple of 3
Exercise 13.4.8 Most Improved
Challenge 13.4.9 Car Showroom
13.5 Array Quiz
Unit Quiz 13.5.1 Array Quiz
14. ArrayList
14.1 ArrayList
Video 14.1.1 ArrayLists
Check for Understanding 14.1.2 Quiz: ArrayList
Example 14.1.3 Initializing an ArrayList
Example 14.1.4 Array vs. ArrayList Initialization
Free Response 14.1.5 Arrays vs. ArrayLists
Exercise 14.1.6 Initializing an ArrayList
Exercise 14.1.7 Car Inventory
14.2 ArrayList Methods
Video 14.2.1 ArrayLists Methods
Check for Understanding 14.2.2 Quiz: ArrayList Methods
Example 14.2.3 ArrayList and Java Primitives
Example 14.2.4 ArrayList Methods
Example 14.2.5 Array vs. ArrayList Methods
Exercise 14.2.6 Get First Element
Exercise 14.2.7 ArrayList of Even Numbers
Exercise 14.2.8 Teacher Class List
Exercise 14.2.9 Teacher Class List Methods
14.3 Traversing ArrayLists
Video 14.3.1 Traversing ArrayLists
Check for Understanding 14.3.2 Quiz: Traversing Arrays
Example 14.3.3 Reading List
Example 14.3.4 While Loop ArrayList Traversal
Example 14.3.5 ArrayList Traversing Error
Exercise 14.3.6 Traversing Odds
Exercise 14.3.7 ArrayList Helper Methods
Exercise 14.3.8 Road Trip!
14.4 Developing Algorithms using ArrayLists
Video 14.4.1 Developing Algorithms Using ArrayLists
Check for Understanding 14.4.2 Quiz: Developing Algorithms
Example 14.4.3 Traversing ArrayLists Simultaneously
Example 14.4.4 Inserting Elements While Traversing ArrayLists
Exercise 14.4.5 ArrayList equals
Exercise 14.4.6 Airline Tickets
Exercise 14.4.7 Billboard Top 10
Exercise 14.4.8 User Data Cleanup
14.5 Searching
Video 14.5.1 Linear Search
Check for Understanding 14.5.2 Quiz: Linear Search
Example 14.5.3 Linear Search
Exercise 14.5.4 Linear Search on ArrayList with While Loop
Exercise 14.5.5 Fantasy Football Roster
Resource 14.5.6 Card Collection FRQ
14.6 Sorting
Video 14.6.1 Selection Sort
Check for Understanding 14.6.2 Selection Sort
Example 14.6.3 Selection Sort
Exercise 14.6.4 Explore Selection Sort
Video 14.6.5 Insertion Sort
Check for Understanding 14.6.6 Insertion Sort
Example 14.6.7 Insertion Sort
Example 14.6.8 Visualizing Algorithms
Exercise 14.6.9 Explore Insertion Sort
Example 14.6.10 Selection Sort vs. Insertion Sort Run Time
Free Response 14.6.11 Selection Sort vs. Insertion Sort
Exercise 14.6.12 Phonebook
14.7 Ethical Issues Around Data Collection
Video 14.7.1 Ethical Issues Around Data Collection
Check for Understanding 14.7.2 Ethical Issues Around Data Collection
Connection 14.7.3 The Curly Fry Conundrum
Free Response 14.7.4 Reflection
Connection 14.7.5 Guidelines on Ethical Data Use
Free Response 14.7.6 Issue News Article
Badge 14.7.7 ArrayList Badge
14.8 ArrayList Quiz
Unit Quiz 14.8.1 ArrayList Quiz
15. 2D Array
15.1 2D Arrays
Video 15.1.1 2D Arrays
Check for Understanding 15.1.2 Quiz: 2D Arrays
Example 15.1.3 GradeBook
Example 15.1.4 ChessBoard
Exercise 15.1.5 Manipulating 2D Arrays
Exercise 15.1.6 Complete Chessboard
Exercise 15.1.7 Tic Tac Toe Board
15.2 Traversing 2D Arrays
Video 15.2.1 Traversing 2D Arrays
Check for Understanding 15.2.2 Quiz: Traversing 2D Arrays
Example 15.2.3 Traversing Gradebook
Example 15.2.4 Linear Search 2D Arrays
Example 15.2.5 Row vs. Column Major
Free Response 15.2.6 Row vs. Column Major
Exercise 15.2.7 Sum Rows in a 2D Array
Exercise 15.2.8 Tic Tac Toe Methods
Challenge 15.2.9 Finalizing Tic Tac Toe
Badge 15.2.10 2D Array Badge
15.3 2D Array Quiz
Unit Quiz 15.3.1 2D Array Quiz
16. Inheritance
16.1 Inheritance
Video 16.1.1 Inheritance
Check for Understanding 16.1.2 Quiz: Subclasses and Superclasses
Example 16.1.3 Person Superclass
Example 16.1.4 Vehicle Superclass
Example 16.1.5 High School Student
Exercise 16.1.6 Person / Student Object
Exercise 16.1.7 Books
Exercise 16.1.8 Computers
Exercise 16.1.9 More Animals!
16.2 Writing Constructors for Subclasses
Video 16.2.1 Writing Constructors for Subclasses
Check for Understanding 16.2.2 Quiz: Writing Constructors for Subclasses
Example 16.2.3 Student Subclass
Example 16.2.4 Shape Class
Example 16.2.5 Implicit Call to Super
Exercise 16.2.6 Students
Exercise 16.2.7 Instruments
Exercise 16.2.8 Foods
Exercise 16.2.9 Clothing Store
16.3 Overriding Methods
Video 16.3.1 Overriding Methods
Check for Understanding 16.3.2 Quiz: Overriding Methods
Example 16.3.3 Square is a Rectangle
Example 16.3.4 Student toString
Example 16.3.5 Restaurant Bills
Exercise 16.3.6 Dogs Bark
Exercise 16.3.7 Electric Cars
Exercise 16.3.8 Online Companies
16.4 super Keyword
Video 16.4.1 super Keyword
Check for Understanding 16.4.2 Quiz: super Keyword
Example 16.4.3 Square Class
Example 16.4.4 Animal Class
Example 16.4.5 Apple Pie
Exercise 16.4.6 Squares
Exercise 16.4.7 Bank Accounts
Exercise 16.4.8 Employees
Exercise 16.4.9 Student Test Scores
16.5 Creating References Using Inheritance
Video 16.5.1 Creating References Using Inheritance Hierarchies
Check for Understanding 16.5.2 Quiz: References Using Inheritance Hierarchies
Example 16.5.3 Animal Sounds
Example 16.5.4 Shape Areas
Example 16.5.5 Person Class
Exercise 16.5.6 Pies
Exercise 16.5.7 Creating .equals
Exercise 16.5.8 Online Companies Revisited
Exercise 16.5.9 Assignments
16.6 Polymorphism
Video 16.6.1 Polymorphism
Check for Understanding 16.6.2 Quiz: Polymorphism
Example 16.6.3 Using Person Methods
Example 16.6.4 Modified Student Class
Example 16.6.5 Vehicle Methods
Exercise 16.6.6 Which Team?
Exercise 16.6.7 Cars
Exercise 16.6.8 Library Books
Exercise 16.6.9 Fun with Solids
16.7 Object Superclass
Video 16.7.1 Object Superclass
Check for Understanding 16.7.2 Quiz: Object Superclass
Example 16.7.3 Default Values
Example 16.7.4 Override toString
Example 16.7.5 Override equals
Exercise 16.7.6 Equal?
Exercise 16.7.7 Equals? - Part 2
Exercise 16.7.8 Equal Rectangles
Exercise 16.7.9 2D Array Tester
16.8 Inheritance Quiz
Unit Quiz 16.8.1 Inheritance Quiz
17. Recursion
17.1 Recursion
Video 17.1.1 Recursion
Check for Understanding 17.1.2 Quiz: Recursion
Example 17.1.3 Summing
Example 17.1.4 Sum Array
Example 17.1.5 Fibonacci Recursion
Exercise 17.1.6 Factorial
Exercise 17.1.7 Countdown!
Exercise 17.1.8 Recursive Minimum
Exercise 17.1.9 Bacteria Cultures
17.2 Recursive Searching
Video 17.2.1 Recursive Searching
Check for Understanding 17.2.2 Quiz: Recursive Searching
Example 17.2.3 Binary Search
Example 17.2.4 Binary Recursive
Example 17.2.5 Binary vs Linear
Exercise 17.2.6 Exploring Binary Searches
Exercise 17.2.7 Comparing Binary Search and Linear Search
Exercise 17.2.8 Maximum Iterations
17.3 Recursive Sorting
Video 17.3.1 Recursive Sorting
Check for Understanding 17.3.2 Quiz: Recursive Sorting
Example 17.3.3 Merge Sort
Example 17.3.4 Sort Visualizer
Exercise 17.3.5 Explore Merge Sort
Exercise 17.3.6 Merge Sort Benchmark Testing
Exercise 17.3.7 Recursive Calls
Exercise 17.3.8 Sort Benchmark Testing
Free Response 17.3.9 Using Concurrent Processes
17.4 Recursion Quiz
Unit Quiz 17.4.1 Recursion Quiz
18. Exam Practice
18.1 IB Assessment Prep Overview
Notes 18.1.1 IB Assessment Prep Overview
Video 18.1.2 Understanding IB Assessments
Quiz 18.1.3 Quiz: Understanding IB Assessments
Notes 18.1.4 Study Guides Overview
Free Response 18.1.5 Testing Mindset
18.2 Topic 1: System Fundamentals
Notes 18.2.1 System Fundamentals Overview
Free Response 18.2.2 Planning and System Installation
Free Response 18.2.3 User Focus
Free Response 18.2.4 System Backup
Free Response 18.2.5 Software Deployment
Free Response 18.2.6 Hardware, Software, Peripheral, Network, and HR
Free Response 18.2.7 Components of a Computer System
Free Response 18.2.8 System Design and Analysis
Free Response 18.2.9 Human Interaction with the System
18.3 Topic 2: Computer Organization
Free Response 18.3.1 CPU Architecture
Free Response 18.3.2 Memory
Free Response 18.3.3 Operating Systems and Application Systems
Free Response 18.3.4 Binary Representation
Free Response 18.3.5 Simple Logic Gates
18.4 Topic 3: Networks
Free Response 18.4.1 Network Fundamentals
Free Response 18.4.2 Data Transmission
Free Response 18.4.3 Wireless Networking
18.5 Topic 4: Computational Thinking, Problem-solving
Free Response 18.5.1 Thinking Procedurally
Free Response 18.5.2 Thinking Logically
Free Response 18.5.3 Thinking Ahead
Free Response 18.5.4 Thinking Concurrently
Free Response 18.5.5 Thinking Abstractly
Free Response 18.5.6 Program Design - Algorithms
Free Response 18.5.7 Program Design - Pseudocode
Free Response 18.5.8 Nature of Programming Languages
Free Response 18.5.9 Use of Programming Languages
18.6 Topic 5: Object Oriented Programming
Free Response 18.6.1 Modeling Objects to Solve a Problem
Free Response 18.6.2 Key OOP Principles
Free Response 18.6.3 Using OOP in Development
Free Response 18.6.4 Using the Right Language
Exercise 18.6.5 Coding Example
18.7 Practice Exam
Notes 18.7.1 Practice Exam
Connection 18.7.2 IB Practice Exam - Paper 1
Connection 18.7.3 IB Practice Exam - Paper 2