CMPS 144 (Computer Science 2)
Fall 2026
Syllabus
CMPS 144L Lab Course
Graduate Teaching Assistants
Office Hours
Test/Quiz Information
Test #1: Friday, October 9:
Preview
Programming Assignments
Prog. Assg. #1:
Tennis Game State
Prog. Assg. #2:
Tennis Game State, Extended
Prog. Assg. #3:
Intervals
Lecture Notes
Software Quality
Exceptions
Cloning in Java
ArrayLists
Iterators
Inheritance/Polymorphism
Animal Class Hierarchy:
Animal
Dog
Cat
Pig
AnimalApp
Development of a (Tossable)Coin Hierarchy
Development of a Counter Class Hierarchy
source code
Code Reuse via Abstract Classes, Inheritance, and Generics; Case Study: Sorting
Loop invariants
Red/Blue Jar of Marbles Game
Introduction to Loop Invariants
Multiplication
Searching an Array: Development of Linear and Binary Search Algorithms
Stacks
All About Stacks
Stack (interface)
Array-based implementation:
StackViaArray
Reference/Pointer-based implementation:
Link1
StackViaLink1
Queues
All About Queues
Queue (interface)
Array-based implementation:
QueueViaArray
Reference/Pointer-based implementation:
Link1
QueueViaLink1
Tester Application:
QueueTestApp
Comparator-based Sorting using Generics
Lists
Lists with Cursors
Lists with Cursors
Array-based Implementation of Lists with Cursors
Java Resources
Java Package Hierarchy
(i.e., links to all packages)
Links to particular packages/classes
java.lang
:
Math
String
java.util
:
Scanner
Iterator
ArrayList
Random
Java SE Download
jGrasp IDE
jGrasp Tutorials
(zipped pdf file) (links to separate chapters exist on web page at URL specified in previous hyperlink)
How Java Works
(how stuff works) (Note that the hyperlinks for downloading JDK, etc., on this page are out of date.)
Java "home page"
Java Tutorials
The Java Tutorials
Object-Oriented Programming Concepts
Language Basics
Classes and Objects
Interfaces and Inheritance
Numbers and Strings
Arrays
Generics
Packages
How to Make Frames (Main Windows)
How to Write Doc Comments for the Javadoc Tool
Programming with Assertions in Java