Reading Assignments and Topics
Review of Java and some new features of Java 5.0
Jan. 23 (1)
Read pp. 4 -- 22
Java applets vs. Java applications, Emacs and program
development, primitives, character constants, terminal output, assignment
operators, the binary operator %, unary operators, type conversion, relational
operators, logical operators, for loop, break, continue, switch, conditional
operator, method syntax, call by value, overloading, local and global
(field) variables,
scope rules.
prepare: Common Errors 1--9 p.22
Programming project 1.19 p. 25
Jan.25 (2)
Read pp. 27 -- 46
Reference types, null, "=" vs "==" vs
.equals, invoking methods, declaration vs creation vs assignment, garbage
collection, String class, catenation, creation, immutability, Integer.parseInt,
Arrays delaration, creation, assigning values to components, input from
System.in, command line arguments
prepare: Common errors 1-6 page 60
Jan. 30 (3)
Read pp. 46 -- 58
enhanced for loops, exception handling--try, catch, finally;
Exception class and subclasses, throw and throws, the string split method.
prepare: In Practice 2.7 p. 61
Feb. 1 (4)
ArrayList class, resize problem
Objects, Classes, Inheritance
Feb. 6 (5)
Read 65-67, 70-82
Constructors, mutators, accessors, toString(), equals(),
compareTo(), "this", instanceof, static members, import statement.
prepare: programming project 3.15 p. 90
Feb. 8 (6)
Read 94-108
Class extension, inheritance, type compatibility,
polymorphism, overriding methods
Feb. 13 (7)
Read 108-124
Covariant return type, abstract methods and classes,
interface, Comparable, Object class, Throwable and derived classes, i/o related
classes
prepare: programming project 4.31, 4.32 p. 159
Feb. 15 (8)
Read 124-131
generic programming using Object class, wrappers for
primitives, autoboxing/unboxing, interfaces and genericity
prepare: programming project 4.35 p 159
Feb. 20 (9)
Read 131-150
generic programming with generic classes (java 5), wildcards
and bounds, generic static methods, restrictions on generics.
Feb. 22 (10)
funcion objects, nested classes, local classes
Algorithm Analysis
Feb. 27 (11) Mar 1
(12) March 6 (13)
Read 163-168,177-183
big Oh, big theta, big omega, little oh and basic
properties. logarithms, estimating code complexity, estimating running
time
prepare: 5.3, 5.4, 5.8, 5.11, 5.12 p193
programming project 5.30 p 198
March 8 (14)
Binary Search, Comparator interface
Standard data structures
March 20 (15) and March 22 (16)
Read 518-534
Collection interface and AbstractCollection class, List
interface, ArrayList, iterators and list iterators interface and
implementation with inner classes, StringBuilder class.
March 27 (17) March 29 (18)
read 220-228, 389-414
Stacks, Queues (interfaces and applications)
p. 417 11.1, 11.2
April 3 (19)
read 228-243
Sets (interfaces and applications)
Maps (interfaces and applications)
programming extra project p.249 6.22
April 5 (20)
read p.540-549
Array implementation of stacks and queues
April 10 (21) April 12 (22)
read p. 550-559
Linked List implementation of stacks
Linked List implementation of queues
Sorting
April 17 (23)
Sorting with api
April 19 (24)
Sorting algorithms: insertion sort, complexity
pp303-309
April 24 (25)
lower bound on sorts by swapping, counting inversions
April 26 (26)
Shell sort
pp309-313
May 1 (27)
quicksort
pp 316--331
May 3 (28)
Review