COMS S1007
Object-Oriented Programming
and Design in Java
July 3, 2007
Teaching staff
• Chris Murphy
– [email protected]
– Office hours: TR 3:30-4:30pm, 608 CEPSR
• This week by appointment only
• Hila Becker
– [email protected]
– Office hours: MW 4-5pm, 6LE1 CEPSR
• Starting next week
About the course
• The second course for majors in computer
science. A rigorous treatment of objectoriented concepts using Java as an
example language.
• Development of sound programming and
design skills, problem solving and
modeling of real world problems from
science, engineering, and economics
using the object-oriented paradigm.
• COMS W1004 or AP Computer Science
with a grade of 4 or 5
• You should be familiar with basic Java
concepts and programming principles
• You should be able to write a 150-line
program with 4-5 classes
Course homepage
• Please check the course homepage
frequently for important announcements
and changes to the reading assignments
• Check the “Discussion” section for
questions related to the homeworks
• Check the “Gradebook” to make sure our
records match your own
• Homeworks: 60%
• Final exam: 40%
• These are “guidelines” for the final grade
• There will be five homework assignments
this semester
– You generally have one week to complete them
• Homeworks will be posted on the course
homepage and in CourseWorks
• An in-class final exam will be held on the
last day of class: Wednesday, August 9
• Exam covers material from readings and
lectures (so come to class!)
• Cay Horstmann
Big Java, Third Edition
• Available at CU Bookstore or Amazon
• Chapter numbers are slightly different from
the Second Edition
• Topics covered include:
– Advanced Java features
– Principles of object-oriented design
– Good programming practices
– Basic graphics
– Data structures
• Check the course homepage for assigned
readings for each lecture
Academic honesty
• Please familiarize yourself with the Computer
Science Department’s policy:
• It is YOUR responsibility to read and adhere to
the policy
• Review of Java basics
– Third edition: Chapters 1-6 except “T”
(Testing) and “G” (Graphics) sections
– Second edition, chapters 1-7 but not ch.5
• Designing Java classes
– Third edition: Read sections 8.1 – 8.9
– Second edition: Chapter 9
Chapters 2-3: Using Objects &
Implementing Classes
• Objects and classes
• Methods
• Constructors
• Accessors & mutators
• Object references
• The Java API: String, Scanner
Chapter 4: Data Types
• The 8 primitive Java data types
• Constants
• Assignment, Increment, Decrement
• Math functions
Chapters 5-6: Decisions and
• The “if” statement
• Boolean expressions
• “while”, “do/while”, and “for” loops