Programming in Java - CS 102

Covers variables, types, conditionals, loops, methods, arrays, objects, classes, inheritance, and programming problem solving.

Study Tools

All

Study guides

9

9 Programming Problem-Solving Techniques

A practical guide to solving programming problems by combining core language constructs with decomposition, tracing, testing, debugging, and complexity analysis.
Study guide · Updated

6 Arrays and Collections

A practical guide to representing, accessing, traversing, searching, and processing ordered data with arrays and collections while choosing appropriate algorithms and managing boundary cases.
Study guide · Updated

2 Variables, Data Types, and Expressions

Build a practical foundation in Python variables, data types, expressions, assignment, conversion, and input-output processing.
Study guide · Updated

7 Objects and Classes

Learn how Java classes model objects, organize state and behavior, create initialized instances, use references, and protect valid data through encapsulation.
Study guide · Updated

4 Loops and Repetition

A practical guide to designing, choosing, tracing, and debugging JavaScript loops and repetition patterns.
Study guide · Updated

8 Inheritance and Object-Oriented Design

A progressive guide to designing Java object hierarchies with encapsulation, access control, inheritance, method overriding, polymorphism, and composition.
Study guide · Updated

5 Methods and Modular Design

Learn how Java methods organize programs into reusable components, accept inputs, return results, manage scope, and support clear modular design.
Study guide · Updated

1 Programming Fundamentals and Problem Solving

A progressive guide to designing, implementing, organizing, and evaluating programs through algorithms, core programming constructs, reusable abstractions, and systematic debugging.
Study guide · Updated

3 Conditionals and Boolean Logic

A progressive guide to JavaScript Boolean values, comparisons, logical operators, conditional branches, and reliable techniques for designing and testing decisions.
Study guide · Updated

Quizzes

9

2 Variables, Data Types, and Expressions

A medium-difficulty quiz on variables, data types, expressions, assignment, type conversion, input/output, and readable Python programming practices. Questions progress from interpreting basic code behavior to applying several concepts together.
Quiz · Updated

3 Conditionals and Boolean Logic

A 14-question assessment on JavaScript conditionals and Boolean logic. The required set includes three single-select questions, two multi-select questions, two true/false questions, two short-text questions, two fill-in-the-blank questions, and one open-ended question, plus two alternate candidates. Questions progress from foundational recognition to applied reasoning.
Quiz · Updated

9 Programming Problem-Solving Techniques

A medium-difficulty quiz on applying programming problem-solving techniques, including decomposition, control flow, data organization, debugging, testing, and complexity analysis.
Quiz · Updated

8 Inheritance and Object-Oriented Design

A 14-question quiz on encapsulation, access control, inheritance, overriding, polymorphism, substitutability, and composition in object-oriented design. Questions progress from foundational understanding to applied design reasoning.
Quiz · Updated

5 Methods and Modular Design

A medium-difficulty quiz on Java methods and modular design, covering method structure, calls, parameters and arguments, scope, return values, decomposition, contracts, side effects, and overloading.
Quiz · Updated

7 Objects and Classes

A medium-difficulty quiz on Java objects, classes, fields, methods, constructors, references, and encapsulation. Questions progress from direct application to more integrated reasoning about object-oriented code.
Quiz · Updated

4 Loops and Repetition

A medium-difficulty quiz on JavaScript loops and repetition. The questions emphasize choosing loop forms, tracing execution, applying loop patterns, and reasoning about termination and boundaries.
Quiz · Updated

1 Programming Fundamentals and Problem Solving

A 14-question quiz on programming fundamentals and problem solving, covering algorithms, program structure, data types, control flow, functions, collections, object-oriented concepts, efficiency, and debugging.
Quiz · Updated

6 Arrays and Collections

A 14-question assessment on arrays and collections, emphasizing indexing, traversal, searching, algorithm selection, boundary handling, and performance trade-offs.
Quiz · Updated

Flashcards

9

9 Programming Problem-Solving Techniques

A focused set of flashcards covering the planning, implementation, testing, debugging, object-oriented design, tracing, and complexity analysis techniques used to solve programming problems.
Flashcards · Updated

4 Loops and Repetition

A focused review of JavaScript loops, repetition patterns, termination, tracing, collection traversal, and common loop-based algorithms.
Flashcards · Updated

1 Programming Fundamentals and Problem Solving

A focused review of algorithms, program structure, data types, control flow, reusable code, object-oriented concepts, collections, and systematic testing.
Flashcards · Updated

7 Objects and Classes

A focused set of flashcards covering Java objects, classes, fields, methods, constructors, references, encapsulation, and class design.
Flashcards · Updated

2 Variables, Data Types, and Expressions

Review core Python concepts for representing data, naming values, evaluating expressions, converting types, and processing input and output.
Flashcards · Updated

6 Arrays and Collections

A focused review of arrays, collections, indexing, traversal, searching, common algorithms, efficiency, and choosing between fixed arrays and dynamic lists.
Flashcards · Updated

5 Methods and Modular Design

Learn how Java methods support modular design through clear declarations, parameters, return values, scope, decomposition, contracts, overloading, and careful handling of side effects.
Flashcards · Updated

8 Inheritance and Object-Oriented Design

Learn how encapsulation, access control, inheritance, overriding, polymorphism, and composition shape robust Java object-oriented designs.
Flashcards · Updated

3 Conditionals and Boolean Logic

Review JavaScript Boolean values, comparisons, logical operators, short-circuit evaluation, and conditional control flow.
Flashcards · Updated