Fall 2012
SWE 510 Object-Oriented Programming in Java
Section 001





Course Description:

Introduces students to programming in the Java language. Topics include problem-solving methods and algorithm development, program structures, abstract data types, simple data and file structures and program development in a modular, object-oriented manner. Introductory use of OO language features, including data hiding, inheritance, polymorphism, and exception handling. Goals include design and development of Java classes and class type hierarchies. An introduction to Java servlets and applets is included. Emphasis on program development is reinforced through several programming projects.


Undergraduate courses or equivalent knowledge in programming in a high-level language.



Adjunct Professor James Baldo Jr.
Computer Science Department

Office Hours:   available by appointment

Teaching Assistant:

Seyed Farid Hendi
Office Hours:  Thursday 17:00 – 19:00 and by appointment
Location:   Room 4456 Engineering Building

Class Hours:

Sec 001: Thursday 7:20 pm - 10 pm;   Planetary Hall 206

Students will have accounts on Moodle and will be able to download lecture slide files from the Moodle course page. Login information will be sent to all enrolled students by email, before the first scheduled class.


Required Textbooks and Materials:

Walter Savitch. Absolute Java 4th Edition. Addison Wesley, 2009, ISBN 0-13-608382-X. Required.

·         Some assignments may require programming techniques not covered in the required text. I will provide pointers to online material at the appropriate time. Required

·         Noted that the Absolute Java book website provides several resources that complement the course lectures, quizzes, and assignment. Recommended

·         Online Java documentation is available from Oracle. Recommended




Attendance is mandatory. Class is scheduled during the semester every Thursday during the Fall 2012 Semester from 7:20 PM to 10:00 PM.


Course Requirements & Grading:

The course grade is based on one 3 hour comprehensive final examination. All required coursework must be completed by the stated due dates and times. Late assignments will not be accepted, no make-up for missed quizzes, and no make-up test will be given for the final examination.

Assignments:         35%

Quizzes:                 25%

Final Exam:            40%

All required coursework for this class is to be performed independently. Please read the information about GMU and CS Department Academic Integrity and Honor Code Policies at

These policies will be strictly enforced.

If you have a documented learning disability or other condition that may affect academic performance you should: 1) make sure this documentation is on file with the Office of Disability Services (SUB I, Rm. 4205; 993-2474; to determine the accommodations you need; and 2) talk with me to discuss your accommodation needs.


Important Dates:

First day of class:  30 August 2012
Drop without Tuition Penalty Dates: 4 September 2012
Drop with Tuition Penalty (and final drop deadline) Dates: 28 September 2012

Last day of classes: 8 December 2012

Final Examination: 13 December 2012, 7:30 pm - 10:15 pm


Tentative List of Topics:

All lecture slides are available for download on the Moodle SWE510 Course Page.

All assignments descriptions will be made available on the Moodle SWE510 Course Page.

All assignments are submitted on via the Moodle SWE510 Course Page.

All quiz descriptions will be made available on the Moodle SWE510 Course Page.

All quizzes are performed on the Moodle SWE510 Course Page.








30 Aug

SWE 510 Course Discussion || Introduction to Java

Savitch Book – Chapter 1




06 Sep

Console Input and Output || Flow of Control

Savitch Book – Chapters 2 and 3 

Assignment 1

Quiz 1


13 Sep

Defining Classes I

Savitch Book – Chapter 4

Assignment 2

Quiz 2


20 Sep

Defining Classes II

Savitch Book – Chapter 5

Assignment 3

Quiz 3


27 Sep

Introduction to Arrays

Savitch Book – Chapter 6

Assignment 4

Quiz 4


04 Oct


Savitch Book – Chapter 7

Assignment 5

Quiz 5


11 Oct

Polymorphism and Abstract Classes

Savitch Book – Chapter 8

Assignment 6

Quiz 6


18 Oct

Exception Handling || File I/O

Savitch Book – Chapters 9 and 10

Assignment 7

Quiz 7


25 Oct

Recursion || Interfaces and Inner Classes

Savitch Book – Chapters 11 and 13

Assignment 8

Quiz 8


01 Nov

Generics and the ArrayList Class

Savitch Book – Chapter 14

Assignment 9

Quiz 9


08 Nov

Linked Data Structures

Savitch Book – Chapter 15

Assignment 10

Quiz 10


15 Nov

Collections, Maps and Iterators

Savitch Book – Chapter 16

Assignment 11

Quiz 11

22 Nov

Thanksgiving – No Class


29 Nov

Swing I || Swing II

Savitch Book – Chapters 17 and 18

Assignment 12

Quiz 12


06 Dec

Java Never Ends

Savitch Book – Chapter 19

Assignment 13

Quiz 13

13 Dec

Final Exam


Updated: 6 Sep 2012
J. Baldo