Review for Weber Java Midterm ============================ Forward: I realize that this page is just plain text and not "fancy" HTML. I further realize that I have provided no page references or lengthly explanations like I did for the Unix class. If anybody complains about any of these things I will email all of my friends and tell them what a 'tard you are. Types of Questions: ------------------ - Matching: 25 Qs @ 1 pt/ea - Fill in the Blanks: 15 Qs @ 2 pt/ea - Multiple Choice: 10 Qs @ 2 pt/ea - Short Answer: 5 Qs @ 5 pt/ea - Bonus Question: 1 Q @ 2 pt Material (Chapter by chapter) -------- Ch1: Introduction - White Paper Buzzwords: Simple, Object-Oriented, Distributed, Robust, Secure, Architecture Neutral, Portable, Interpreted, High Performance, Multithreaded, Dynamic - garbage collection - references - just-in-time compilers - history - embedded Ch2: Compiler / VM - J2SE / JDK / SDK / JRE - PATH - CLASSPATH - java - javac - jar - javadoc - .java file - .class file Ch3: Fundamental Languages Constructs - System.out.println - public static void main - case sensetive - bug parade - block { } - parameters / arguments - comments - strongly typed - primitive types: int, short, long, byte, float, double, char, boolean - object wrappers - identifier - valid variable identifiers - assignment - initialization - constant / final - operators: arithmetic, inc/dec, relational, bitwise, logical - "shortcut" operators - short-circuiting - Math class - casting - implicit vs. explicit casting / widening vs. narrowing conversion - String (string) - concatenation - immutable strings - StringBuffer - String.length() - String.equals() - java.sun.com - NumberFormat - scope - 3 types of programming stmts - conditional statements: if, switch - loops: while, do-while, for - break - labeled breaks - array - instantiating an array w/ "new" - initializing an array - ary.length - cmd-line params: String[] args - multidimensional - ragged arrays - BigInteger / BigDecimal Ch4: Classes - class - object - instance (instantiate) - encapsulation - properties - methods - members - OOP - behavior & identity - state - 3 object relationships: is-a, has-a, uses - UML - OO vs. Procedural design - static members - constructor - "factory" method (i.e. myDate.toString()) - types of methods: accessors (get-), mutators (set-), constructor, destructor - pass by value vs. pass by reference - finalize (destructor) - instance vs. static methods - package - import - implicit compilation of dependencies - this pointer Ch5: Inheritance - extends (inheritance) - super class / parent / base - subclass / child / derived - ancestor - descendant - hierarchy - overloading - overriding - access modifiers: public, protected, naked, private - halting inheritance / derivation w/ final - abstract class - polymorphism - up-casting vs. down-casting - Object class - reflection w/ the Class class - method pointers Ch6: Interfaces and Inner Classes - interface - problems with multiple inheritance - implements keyword - diffs tween interfaces and classes - applications of interfaces: comparisons, callbacks, enumerations - cloning w/ clone() method - shallow copy vs. deep copy - inner class - anonymous inner class - proxy