Schedule (Subject to Change)

Sides may not include all the material discussed in lecture. You are responsible for any material we present in lecture, even if it does not appear in the posted slides. To import the zip files with lecture examples into Eclipse, follow the instructions provided at Importing (Projects).

Week      Topics Slides Work
Week #1
(Jan 27)
Course Intro, Computer Systems, Software Tools, Object-Oriented Terminology, Rules for Java Identifiers, Assignment, Primitive Types, Simple Output, Operators Course-Intro.pdf
CompOrgEclipseIntro.pdf
JavaIntro.pdf
JavaVariablesTypes.pdf
JavaVariablesTypesCode.zip
Week #2
(Feb 3)
Strings, Input (Scanner), Conditionals, Logical Operators, Block Statements, Precedence Rules, Short-circuiting, Style, Symbolic Constants, Assignment Operators, Input (JOptionPane), Loops (while/do while/for), Random numbers StringScanner.pdf
StringScannerCode.zip
CondStmtStyle.pdf
CondStmtStyleCode.zip
LoopsWhileDoWhile.pdf
LoopsWhileDoWhileCode.zip
P1 Out (Tue)
Week #3
(Feb 10)
Loops (while/do while/for), Nested Loops, Intro to methods (static), parameters, local variables, public/private ForNestedLoops.pdf
ForNestedLoopsCode.zip
StaticMethods.pdf
StaticMethodsCode.zip
P1 Due (Tue)
P2 Out (Tue)
Q1 (Thu)
Week #4
(Feb 17)
Methods (static), Precedence, Casting, StringBuffer, Math Libraries, Memory Diagrams/Maps, Floating Point Computations PrecAssocCasting.pdf
StringMathLib.pdf
StringMathLibCode.zip
MemoryDiagrams.pdf
MemoryDiagramsCode.zip
P2 Due (Tue)
P3 Out (Tue)
Q2 (Thu)
Week #5
(Feb 24)
Memory Diagrams, Classes Intro, Constructors, get/set/toString methods Current Object (this) ClassesI.pdf
ClassesICode.zip
ClassesII.pdf
ClassesIICode.zip
P3 Due (Wed)
Week #6
(Mar 2)
equals method, copy constructor, break/continue, Design (Pseudocode)(Lab), Testing Debugging (Lab) ClassesIII.pdf
ClassesIIICode.zip
Exam #1 (Mon)
P4 Out (Mon)
Week #7
(Mar 9)
Exceptions, Ternary Operator, Switch Statement TestingDebugging.pdf (lab)
TestingDebuggingCode.zip (lab)
SoftwareDevelopment.pdf (lab)
Exceptions.pdf
ExceptionsCode.zip
TernarySwitch.pdf
TernarySwitchCode.zip
P4 Due (Thu)
Spring Break 2020
Classes Cancelled (Mar 23 - Mar 27), Mid-Term Grades Due (Mon)
Week #8
(Mar 30)
Arrays, javadoc ArraysIntro.pdf
ArraysIntroCode.zip
Arrays.pdf
ArraysCode.zip
Video #1a Video #2a Video #3a
P5 Out (Mon)
ProgExpEx Out (Tue)
LabEx Out (Wed)
LabEx Due (Fri)
Week #9
(Apr 6)
Privacy Leaks, Reference/Shallow/Deep Copies, Abstraction, Encapsulation, Packages CopyingObjects.pdf
CopyingObjectsCode.zip
AbstractionLib.pdf
AbstractionLibCode.zip
Lecture Video
Video 1   Video 2  
Video 3   Video 4  
P5 Due (Tue)
Q3 (Wed)
ProgExpEx Due (Wed)
P6 Out (Tue)
Week #10
(Apr 13)
MVC, ArrayList, Interfaces, Wrappers, Method Overloading ArrayListInterfaces.pdf
ArrayListInterfacesCode.zip
WrappersOverloading.pdf
WrappersOverloadingCode.zip
Video #1 (Starting at time marker 1:14)
Video #2b
P6 Due (Tue)
Exam #2 (Wed)
P7 Out (Tue)
Week #11
(Apr 20)
Two-Dimensional Arrays, Recursion TwoDimArrays.pdf
TwoDimArraysCode.zip
Recursion.pdf
RecursionCode.zip
Video #1 (Arrays)
Video #2 (Recursion)
Video #3 (Recursion II)
findElement Video
instancesOfElement Video
setTo Video
P7 Due (Wed)
Q4 (Fri)
P8 Out (Wed)
Week #12
(Apr 27)
Inheritance Intro, Iterators, getClass, instanceof, Object Class, Early/Late Binding InheritanceIntro.pdf
InheritanceIntroCode.zip
ObjectBinding.pdf
ObjectBindingCode.zip
Video #1 (Starting at timer marker 1:57)
Video #2c
Video #3 b
Video #4 (Until timer marker 32:12)
P8 Due (Wed)
P9 Out (Wed)
Exam #3 (Fri)
Week #13
(May 4)
Composition vs. Inheritance, Reviewing Overloading/Overriding, equals options (see slides/videos previous week).
Command Line Arguments, Multiple Inheritance
CmdLineArgsLoops.pdf
CmdLineArgsLoopsCode.zip
MultipleInheritance.pdf
MultipleInheritanceCode.zip
Video (Command Line Arguments, starting at time marker 33:36)
Video (Multiple Inheritance, up to time marker 24:10)
Week #14
(May 11)
Dynamic systems, State Transition Diagrams, Course Evaluation (lecture), Miscellaneous, Final Exam Review DynSysStateTransitionDiag.pdf
Video (Dynamic Systems, State Transition Diagrams, starting at time marker 24:11)
P9 Due (Mon)
Last Day of Classes
(Tue, May 12)

Final Exam
(Fri, May 15
4pm - 6pm)
Web Accessibility