Try it free

← All courses

University of South Carolina CSCE 145

Professor Shepherd · University of South Carolina · 19 lectures with notes

Students in this class: ask your lecturer for the class code, and these lectures will already be in your library when you sign up.

CSCE145 F2026 00 Introduction

12 Aug 2026

Learn how Java source becomes executable bytecode, then build a small program that prints messages and adds user-entered integers.

CSCE145 F2026 01 Basic Computing Part 01

12 Aug 2026

Learn Java’s basic data and computation tools, then apply them to convert feet into inches.

CSCE145 F2026 01 Basic Computation Part 02

12 Aug 2026

Use Java Strings, Scanner, and wrapper parsing methods to extract typed fields from input.

CSCE145 F2026 01Branching Statements Part 02

12 Aug 2026

Java branching depends on choosing nested if, else-if, and independent if statements to match the logic of each decision.

CSCE145 F2026 01 Branching Statements Part 01

12 Aug 2026

Build Java decisions with if/else and Boolean logic, then apply them in a randomized console math challenge.

CSCE145 F2026 03 Loops Part 01

12 Aug 2026

Compare Java `while` and `do-while` loops through guessing-game and factorial examples, then learn to avoid infinite loops.

CSCE145 F2026 03 Loops Part 02

12 Aug 2026

Learn Java for-loop structure, nested loops, and loop-control techniques including break, continue, and sentinels.

CSCE145 F2026 04 Arrays Part 01

12 Aug 2026

Java arrays use fixed-size, zero-based indexing to store and process same-type values efficiently.

CSCE145 F2026 04 Arrays Part 02

12 Aug 2026

Java array searching, selection sort, and bubble sort demonstrated with practical code examples.

CSCE145 F2026 04 Arrays Part 03

12 Aug 2026

Java’s arrays of arrays support nested traversal, a 10×10 grid game, and rows with different lengths.

CSCE145 F2026 05 Methods

2 Oct 2026

Java methods turn program functionality into reusable, parameterized actions and make a unit converter easier to organize and debug.

CSCE145 F2026 06 Classes and Objects Part 01

2 Oct 2026

Java classes encapsulate data and behavior, while constructors create objects and references determine how instances are compared and shared.

CSCE145 F2026 06 Classes and Objects Part 02

2 Oct 2026

Build a Java `Pet` class with encapsulated fields, a `PetType` enum, and overloaded compliment methods.

CSCE145 F2026 06 Classes and Objects Part 03

2 Oct 2026

Static Java methods support shared class-level behavior, including Pet factory and cloning methods that create distinct objects.

CSCE145 F2026 06 Classes and Objects Part 04

2 Oct 2026

Build a Java taco tracker using a Taco class, an encapsulated TacoManager, and a fixed-size array with a first-null insertion rule.

CSCE145 F2026 06 Classes and Objects Part 05

2 Oct 2026

Build a Java taco manager that adds, removes, sorts, and prints taco objects stored in a reference array.

CSCE145 F2026 07 Inheritance and Polymorphism Part 01

2 Oct 2026

A Java Person–Student–Undergraduate hierarchy demonstrates inheritance, method overriding, and polymorphic use of a shared superclass array.

CSCE145 F2026 07 Inheritance and Polymorphism Part 02

2 Oct 2026

Java interfaces and dynamic dispatch let one `Shape` type support many extensible drawing implementations.

CSCE145 F2026 08 Exceptions

2 Oct 2026

Create, throw, and catch Java exceptions to report calculator errors while keeping the program running.

Keep the lectures you learn from

Paste a video, playlist, or channel URL — get transcripts, AI summaries with clickable timestamps, and search across everything.

Get started — it's free