Prelim 3 Topics All Earlier Topics (review questions, exams, projects, exercises, section, etc.) - emphasis is on new topics but you are responsible for all earlier topics, e.g. nested loops, random numbers, search Classes and Objects and Methods - references, $null$, $this$ - $final$ - designing - Box Scope Diagrams: everything to date, e.g. arrays and methods and $static$ + Methods - writing, calling, returning values, return types - formal parameters, actual parameters, pass by value - overloading + Constructors - are indeed methods - designing, calling - default constructor - Class/$static$ versus instance/non-$static$ (variables and methods) - default values for instance variables + Encapsulation - $public$, $private$ - why is $main$ $public static void$? Strings and Characters - Strings are objects - ASCII text, UNICODE, text files - TokenReader to read in files (we would give you the template) - String methods: length, toCharArray, indexOf, toLowerCase, new String, charAt - casting $char$ to/from $int$, e.g. converting case Arrays - aliasing - arrays are objects - elements of arrays are instance variables numbered 0... - $length$ variable - default values - how to declare and create arrays - initializer lists and anonymous arrays - searching for a value in array (linear search) - arrays of objects (array_objects0.java) - 1-D arrays + Arrays of Arrays - row major (column major will not be on Prelim 3) - ragged arrays - 2-D arrays - terminology: matrix, table, 2-D array, array of arrays Project 4 (recap of some topics seen on Prelim 2) - objects and methods - $null$ - linear search through object references Project 5 - equations of motion (e.g., position += velocity*dt) - know how to test for (non-)overlapping rectangles - graphics (use commands we provide for you, like $fillOval$) - hint: see solution to bonus work! Project 6 - terminology! - substitution ciphers - using/making encryption and decryption keys - see "Strings and Characters" and "Arrays" above - $static$ - printing arrays - distance between matrices