An introduction to programming with the Java programming language.
Lecture notes for a course at Rochester Institute of Technology, spring quarter 1998. Based on German lecture notes.
From here one can reach copies of the overheads used in class, the Java documentation from Sun, and the programming examples used in class. The text does not constitute a complete transcript of the lectures. Additionally one should consult books about Java, object oriented programming, network programming, and about the World Wide Web.
A good starting point to look for Java tools on the Web are the Java Resource List and the Products & APIs at Sun Microsystems as well as Jeff Poskanzer's Home-Page.
Depending on the computing platform you need special viewers or plugins which have to be installed beforehand.
Some of the documents are rendered in black and white only because Acrobat Distiller 3.01 crashes when translating some colored pictures even after they were processed using Adobe PhotoShop 3.0.
|Office Hours||Tuesday, Thursday,
|March||10||resources, introduction, first program, first application|
|12||first applet, integers, exceptions|
|17||homework; floating point; conditions|
|19||characters and strings, i/o system; objects|
|24||homework; command line, counting bytes and unicode characters|
|26||interface, properties, inner classes, command line options, counting streams and readers|
|read||nested and anonymous classes; parsing with recursive descent|
|31||homework; oo design: framework for command line, trivial example: cat|
|April||2||oo design: sorting|
|7||homework; threads: technology|
|9||threads: typical examples|
|14||homework; AWT: programming model, Button and events|
|16||notes on programming style, event handling, tracing events, Canvas|
|21||homework; Checkbox Choice Dialog FileDialog Image|
|23||Label List Menu|
|28||homework; PopupMenu, Scrollbar, ScrollPane, TextArea;|
|30||strategies for event handling; calculators with configurable keyboard|
|May||5||homework; application framework, layouts, experiments with gridbag layout|
|7||Networking, TCP client and server, UDP client and server|
|14||homework; web database client, proxy, and server|
|19||Final Exam, closed book|
Half of your grade will be based on weekly assignments (mostly programming), the other half on a final exam.
Assignments and solutions are posted as indicated above. Assignments must be turned in to me by e-mail or using the command
submit ats java-number path...before 16:00 on the due date. I'll acknowledge receipt in class. Don't slide papers under my door, don't turn e-mail in late or more than once, and don't copy from others.
Incomprehensible code will be considered wrong -- this is not a first programming course. If you have complaints talk to the grader; if it is still necessary see me.