JAVA: Programming Language



CS 326


Instructor: Prof. Judy Hansen-Childers

Office: Room 209

Home Phone: 582-7632

Office Hours:

Monday – 1 PM  to 4 PM

Tuesdays, Thursdays – 10:50 to 11:50

Friday – 2 PM to 3 PM

You are welcome to drop by at other times or make an appointment !

Office Phone: 859-1335


Snow Phone/Cancellation Line: 859-1140

Class Schedule: Monday, Wednesday, and Fridays - From 11:00 AM until 11:50 AM in Room 126.



JAVA for Students by Douglas Bell and Mike Parr (Prentice Hall, 3rd Edition)  


Required Materials:




COURSE DESCRIPTION: Prerequisite: Sophomore standing

This course introduces the student to the concepts, theory, practice, and program design issues of the object-oriented JAVA programming language. Students will learn to read, analyze, write, and debug Applets and applications. Concepts are reinforced through lecture as well as written and hands-on programming assignments. Topics addressed include: program analysis and design, basic algorithms, objects, control structures, methods, classes, inheritance, events, GUIs, strings, and vectors.

COURSE OBJECTIVES (Learning Outcomes):

By the end of the course, the student should:

1. Understand the essential syntax, concepts and theory of the JAVA language.

2. Be able to correctly apply the syntax and concepts presented in class in his/her programs.

3. Be able to design and successfully implement programmer-defined methods and classes.

4. Be able to design, write, edit, link, compile and debug Java Applets and applications using Sun System’s SDK and the JAPA front end.



The student’s attainment of the learning outcomes will be assessed in the following ways:


Objective #1:  The student’s understanding of the essential syntax, concepts, and theory of the JAVA language will be measured through class attendance and participation, and the student’s understanding of the reading assignments as indicated through his/her written assignments.


Objectives #2 - 4:  The student’s correct application of JAVA syntax and concepts, the design and implementation of programmer-defined methods and classes, and the ability to create JAVA Applets and applications using JAPA and Sun’s SDK will be assessed by the ratio of assigned programming projects to successfully completed programming projects.



IMPORTANT!! Students are expected to read the material in the text and to complete programming projects OUTSIDE OF CLASS.

Each week students will have reading assignments from the text, written exercises and programming projects. As the best way to learn a programming language is to write code, you will be writing a lot of programs (somewhere around 30). Thus, it is important that you keep up with your reading and program writing!

IF YOU ARE HAVING PROBLEMS WITH A CONCEPT OR A PROGRAM PLEASE SEE ME ASAP!!  (However, I will expect that you have made a good faith effort to attend class and read the assigned material)  J



A (94 - 100) A- (90 - 93) B+ (87 - 89) B (83 - 86) B- (80 - 82)

C+ (77 - 79) C (73 - 76) C- (70 - 72) D+ (67 - 69) D (63 - 66)

D- (60 - 62) F (below 60)



Written Assignments.........................................…………….. 10%

Assigned Programs………………………………………….. 70%

Attendance and Participation................................................... 20%




Students are expected to attend all class sessions and to be prepared to discuss the assigned readings and written homework If a student must miss a class session, it is the student’s responsibility to arrange other ways of obtaining the information covered in class. Please notify the instructor in advance if you have to miss a class. Students with excessive absences may not receive a passing grade.


Students who plagiarize papers and projects or cheat on exams will receive zeros for the work in question and may fail the course.



·        Changes in the syllabus and assignments may be modified as deemed appropriate by the instructor.  All changes will be announced in class.

·        Students with a disability who are requesting academic accommodations should contact Ellen McQuiston at the Center for Academic Support (CAS) and the instructor as soon as possible.



Important Links

 Sun’s JAVA Site   

The JAVA Tutorial  

The JAVA Boutique 


JAVA Technology Zone 

The JAVA Ranch 

JAVA Programming Resources

JAVA Shareware

JAVA Coffee Break

Thomas College Homepage






Week of 8/30

 Introduction to Course and the JAVA programming language


 Program Analysis and Design


 Using JAPA and the JDK




LABOR DAY WEEKEND – No classes Monday, September 6th

Week of 9/6

 Elements of JAVA (Chapters 1 &  2)


 Early Graphics (Chapter 3)


 (Assignments: 3.1, 3.2, 3.3, 3.5, Bus, Radiation Sign) (Extra Credit   - OPTIONAL: 3.4)

Week of 9/13

 Variables and Calculations (Chapter 4)


 (Assignments: 4.1, 4.3, 4.5, 4.6, 4.7) (Extra Credit - OPTIONAL: 4.2, 4.8)

Week of 9/20

 Methods (Chapter 5)


 (Assignments: 5.2, 5.3, 5.4, 5.5, 5.7, 5.8)  (Extra Credit   OPTIONAL: 5.1, 5.9)

Week of 9/27

 Events (Chapter 6)


 (Assignments: 6.1, 6.3, 6.4, 6.5) (Extra Credit - OPTIONAL: 6.2, 6.6)  

Week of 10/4

 Decisions (Chapter 7)


 (Assignments: 7.1, 7.4, 7.5)  (Extra Credit - OPTIONAL: 7.6, 7.7, 7.8)


Columbus Day Weekend –NO CLASSES Monday and Tuesday October 11 and 12

Week of 10/11

 Repetition (Chapter 8)


 (Assignments: 8.1, 8.3, 8.6)  (Extra Credit - OPTIONAL: 8.4, 8.8, 8.9, 8.10, 8.11)

Week  of 10/18

 Objects and Classes (Chapter 9)


 (Assignments: 9.1, 9.2, 9.5)  (Extra Credit - OPTIONAL: 9.4, 9.6, 9.7, 9.8)

Week of 10/25

 Objects and Classes (Chapter 9) - continued



Week of 11/1

 Inheritance (Chapter 11)


 (Assignment: 11.3)

Week of 11/8

 Calculations (Chapter 12)


 (Assignments: 12.1, 12.4)  (Extra Credit - OPTIONAL: 12.6, 12.7, 12.9, 12.11, 12.12, 12.13, 12.14)

Week of 11/15 & 11/22

 Arrays    (Chapter 13)


 (Assignments: Any Exercise from Chapter 13 EXCEPT 13.1)  (Extra Credit - OPTIONAL: Any other Exercise except 13.1))

Week of 11/29

 Two-dimensional Arrays    (Chapter 14)


 (Assignments: Any Exercise from Chapter 14)  (Extra Credit   - OPTIONAL: Any other exercise in Chapter 14)

Week of 12/6

 Wrap-up Programming Projects



Finals Week

 Wrap-Up Programming Projects



This syllabus may be changed at the discretion of the instructor.

Last Revised: August 20, 2004