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.
| Week | Topics | Slides | Work |
|---|---|---|---|
| Week #1 (Aug 26) |
Course Intro, Computer Systems, Software Tools, Object-Oriented Terminology, Rules for Java Identifiers, Assignment, Primitive Types, Simple Output, Strings, Operators, Comparison, Input (Scanner) |
Course-Intro.pdf CompOrgEclipseIntro.pdf JavaIntro.pdf JavaVariablesTypes.pdf JavaVariablesTypesCode.zip StringCompScanner.pdf StringCompScannerCode.zip |
|
| Week #2 (Sep 2) |
Conditionals, Logical Operators, Block Statements, Precedence Rules, Short-circuiting, Style, Symbolic Constants, Assignment Operators, Input (JOptionPane), Loops (while/do while/for), Random numbers |
CondBlockStmtStyle.pdf CondBlockStmtStyleCode.zip LoopsWhileDoWhile.pdf LoopsWhileDoWhileCode.zip |
P1 Out (Wed) |
| Week #3 (Sep 9) |
Loops (while/do while/for), Nested Loops, Intro to methods (static), parameters, local variables, public/private, Avoiding Code Duplication by Using Methods |
ForNestedLoops.pdf ForNestedLoopsCode.zip PrecAssocStaticMethods.pdf PrecAssocStaticMethodsCode.zip |
P2 Out (Mon) P1 Due (Tue) Q1 (Wed) |
| Week #4 (Sep 16) |
Floating Point Calculations, Memory Diagrams / Maps, Passing by Value, Instance variables, Non-Static methods, private vs. public, Immutable, SpringBuffer |
PassByValueMemDiag.pdf PassByValueMemDiagCode.zip |
P2 Due (Mon) P3 Out (Mon) Q2 (Wed) |
| Week #5 (Sep 23) |
Debugger, Testing, Design (Pseudocode), Classes Intro |
SoftwareDevelopment.pdf ClassesI.pdf ClassesICode.zip |
Exam #1 (Wed) |
| Week #6 (Sep 30) |
Constructors, get/set/toString methods, Memory Maps II, Current Object (this), equals method, Copy Constructor, break/continue |
MemoryMaps.pdf MemoryMapsCode.zip ClassesII.pdf ClassesIICode.zip ClassesIII.pdf ClassesIIICode.zip |
P3 Due (Mon) P4 Out (Mon) |
| Week #7 (Oct 7) |
Exceptions, APIs (String, Math), Switch Statement, Ternary Operator, Privacy Leaks |
Exceptions.pdf ExceptionsCode.zip StringMathLib.pdf StringMathLibCode.zip ImmutableSwitch.pdf ImmutableSwitchCode.zip |
P5 Out (Mon) P4 Due (Tue) |
| CMSC133 Starts | |||
| Week #8 (Oct 14) |
Arrays, Testing JUnit (Lab), javadoc |
ArraysIntro.pdf ArraysIntroCode.zip Arrays.pdf ArraysCode.zip |
P5 Due (Tue) P6 Out (Wed) CMSC133 First Week |
| Week #9 (Oct 21) |
Privacy Leaks, Reference/Shallow/Deep Copies, Testing, Abstraction, Encapsulation, Packages, Recursion |
CopyingObjects.pdf CopyingObjectsCode.zip TestingDebugging.pdf TestingDebuggingCode.zip AbstractionLib.pdf AbstractionLibCode.zip Recursion.pdf RecursionCode.zip |
Mid-Term Grades Due (Mon) Q3 (Wed) P6 Due (Thu) |
| Week #10 (Oct 28) |
Recursion, Two-Dimensional Arrays |
TwoDimArrays.pdf TwoDimArraysCode.zip |
Exam #2 (Wed) P7 Out (Wed) |
| Week #11 (Nov 4) |
Two-Dimensional Arrays, MVC, ArrayList, Interfaces |
ArrayListInterfaces.pdf ArrayListInterfacesCode.zip |
Q4 (Wed) |
| Week #12 (Nov 11) |
Wrappers, Method Overloading, Inheritance Intro, Iterators |
WrappersOverloading.pdf WrappersOverloadingCode.zip InheritanceIntro.pdf InheritanceIntroCode.zip |
P7 Due (Tue) P8 Out (Thu) |
| Week #13 (Nov 18) |
Object Class, Early/Late Binding, Composition vs. Inheritance, getClass |
ObjectBinding.pdf ObjectBindingCode.zip |
Exam #3 (Wed) P9 Out (Fri) |
| Week #14 (Nov 25) |
instanceof, Command line Arguments |
CmdLineArgsLoops.pdf CmdLineArgsLoopsCode.zip |
P8 Due (Mon) Thanksgiving |
| Week #15 (Dec 2) |
Course Evalation (lecture), Miscellaneous, Final Exam Review |
MultipleInheritance.pdf MultipleInheritanceCode.zip DynSysStateTransitionDiag.pdf |
P9 Due (Thu) |
| Week #16 (Dec 9) |
Final Exam Review |
Review.pdf ReviewCode.zip All Lecture Slides/Examples |
Last Day of Classes (Mon, Dec 9) Final Exam (Thu, Dec 12 4pm - 6pm) |