COURSE DESCRIPTION
An introduction to procedural and object-oriented programming methodology. Topics include program structure, conditional and iterative programming, procedures, arrays and records, object classes, encapsulation, information hiding, inheritance, polymorphism, file I/O, and exceptions. Includes required laboratory. This course has been designated as a High Demand/Controlled Access (HD/CA) course. Students registering for HD/CA courses for the first time will have priority to do so.
COURSE TOPICS
- Introduction to Objects in Java, using predefined objects (e.g. String)
- Review of program control statements: conditionals and loops with an introduction to formal methods (preconditions, post conditions, loop invariant)
- Writing more complex classes.
- Arrays and the ArrayList class.
- Inheritance and polymorphism in Java, simple examples, the Java class hierarchy.
- Exceptions and File I/O.
- Introduction to graphical user interface components.
- Recursive programming, basic examples (factorial, Fibonacci numbers, Towers of Hanoi, etc...)
- Documenting sources of code, effects of software piracy on business and individuals
PREREQUISITES
Level 4 or higher on the math placement exam Advisory Prerequisite: CSE 110 or ISE108
COURSE OUTCOMES
- An ability to program in an object oriented language, using concepts such as object classes, encapsulation, inheritance, and polymorphism.
- An ability to use fundamental data structures such as arrays.
- An ability to program with sound code structure and use systematic software debugging and testing techniques.
INSTRUCTOR
Richard McKenna richard@cs.stonybrook.edu CS Dept. 1436 Office Hours:
|
![]() |
LECTURE
Tuesdays & Thursdays
2:30 pm - 3:50 pm
Javits 111
LABS
L10 Teaching Assistants: Mondays & Wednesdays 4pm-5:20pm Harriman Hall 320 |
Kang Piao |
Danny Gibson |
L11 Teaching Assistants: Tuesdays & Thursdays 8:30am-9:50am Harriman Hall 320 |
Yi Xie |
Aditya Balwani |
L12 Teaching Assistants: Tuesdays & Thursdays 1pm-2:20pm Harriman Hall 320 |
Joshua Downes |
Billy Gibson |
TEACHING ASSISTANTS (Grading & Office Hours)
All office hours are held in the Computer Science Building, Room 2110
![]() Md Nahid Hossain mdnhossain@cs.stonybrook.edu M 12:00pm-3:00pm |
![]() Yuren Huang yurhuang@cs.stonybrook.edu MW 6:00pm-7:30pm |
![]() Sriganesh Navaneethakrishnan srnavaneetha@cs.stonybrook.edu Th 11:00am-12:00pm |
![]() Boyu Wang boyu.wang@stonybrook.edu M 10:00am-11:00am F 9:00am-11:00am |
![]() Yang Wang wang33@cs.stonybrook.edu WF 1:00pm-2:30pm |
![]() Zijun Wei zijwei@cs.stonybrook.edu MWF 11:00am-12:00pm |
ADDITIONAL HELP
Note that we have an army of teaching assistants available in CS 2110 this semester. You should try our
graduate teaching assistants first, but there are additional help resources available in CS 2110. A number
of undergraduate teaching assistants are helping CSE 219 students, and they have been instructed to assist
CSE 114 students as well. See the CSE 219 Office Hours Grid
for the times they are available to help.
OFFICE HOURS GRID
Start Time | End Time | MONDAY | TUESDAY | WEDNESDAY | THURSDAY | FRIDAY |
---|---|---|---|---|---|---|
8:30am | 9:00am | Lab 11 | Lab 11 | |||
9:00am | 9:30am | Lab 11 | Lab 11 | Boyu Wang | ||
9:30am | 10:00am | Lab 11 | Lab 11 | Boyu Wang | ||
10:00am | 10:30am | Boyu Wang | Boyu Wang | |||
10:30am | 11:00am | Boyu Wang | Boyu Wang | |||
11:00am | 11:30am | Zijun Wei | Zijun Wei | Sriganesh Navaneethakrishnan | Zijun Wei | |
11:30am | 12:00pm | Richard McKenna & Zijun Wei | Zijun Wei | Sriganesh Navaneethakrishnan | Richard McKenna & Zijun Wei | |
12:00pm | 12:30pm | Richard McKenna & Md Nahid Hossain | Richard McKenna | |||
12:30pm | 1:00pm | Md Nahid Hossain | ||||
1:00pm | 1:30pm | Md Nahid Hossain | Richard McKenna Lab 12 | Yang Wang | Richard McKenna Lab 12 | Yang Wang |
1:30pm | 2:00pm | Md Nahid Hossain | Richard McKenna Lab 12 | Yang Wang | Richard McKenna Lab 12 | Yang Wang |
2:00pm | 2:30pm | Md Nahid Hossain | Lab 12 | Yang Wang | Lab 12 | Yang Wang |
2:30pm | 3:00pm | Md Nahid Hossain | Lecture | Lecture | ||
3:00pm | 3:30pm | Lecture | Lecture | |||
3:30pm | 4:00pm | Lecture | Lecture | |||
4:00pm | 4:30pm | Lab 10 | Lab 10 | |||
4:30pm | 5:00pm | Lab 10 | Lab 10 | |||
5:00pm | 5:30pm | Lab 10 | Lab 10 | |||
5:30pm | 6:00pm | |||||
6:00pm | 6:30pm | Yuren Huang | Yuren Huang | |||
6:30pm | 7:00pm | Yuren Huang | Yuren Huang | |||
7:00pm | 7:30pm | Yuren Huang | Yuren Huang | |||
7:30pm | 8:00pm | |||||
8:00pm | 8:30pm | |||||
8:30pm | 9:00pm |
COLLEGE OF ENGINEERING TUTORING SERVICES
Stony Brook University and CEAS offer many FREE tutoring services on campus Monday-Friday. CEAS offers FREE one-on-one or group tutoring for select introductory courses required for all engineering majors. You may request tutoring information by visiting or calling the CEAS Undergraduate Student Office. Go to the CEAS Tutoring Services page for the full schedule as well as how to arrange additional tutoring services.
PLATFORMS
This course will use the Java programming language, version 8, along with the eclipse Integrated Development Environment. Note that the following references will be helpful to students while completing the Java programming assignments:
- Java Development Kit (Standard Edition) - this is the Java Language itself. The JDK provides the code, compiler, and JVM so that you may write your own programs.
- Java 8 API - this reference provides a summary of all the Standard Edition classes, many of which we'll make use of.
- The Java Tutorial - walks one through programming in Java, including the new features of Java 8.
- eclipse -this is the tool we'll use to author Java programs. It makes use of the JDK.
- CodeLab - a site with programming exercises (a.k.a. turingscarft.com) that students will work on during labs and some homeworks. Note that student accounts are required for this. Accounts are free with the purchase of our textbook or can be purchased for $5 on the site.
TEXTBOOK
Introduction To Java Programming, Brief Version
by Y. Daniel Liang
Published by Prentice Hall, 2014
Print ISBN-10: 0133813479
Print ISBN-13: 978-0133813470
GRADING BREAKDOWN
Homework Assignments, Project, Quizzes, & Labs | 25 % | |
Midterm Exams (2) | 40 % | (20 % each) |
Live Final Coding Exam | 35 % | |
100 % |
There will be in-class quizzes / brief assessments used to practice the class material and measure growth in knowledge, abilities, and skills. Students will solve these problems during each lecture.
The Pass/No Credit (P/NC) option is not available for this course. This policy applies to all CSE/ISE undergraduate courses used to satisfy the graduation requirements for the major.
Grade Cutoffs
A [94-100], A- [90-94), B+ [85-90), B [80-85), B- [75-80), C+ [70-75), C [65-70), C- [60-65), D+ [55-60), D [50-55), F [0-50)
SPECIAL RULE: If all your grades, including homework assignments, quizzes, recitation and your three exam grades are above the respective class averages, you're guaranteed to receive a grade of C or higher for this class.
ACADEMIC DISHONESTY
Read This! You may discuss the homework in this course with anyone you like, however each student's submission, including written material and coding, must be his or her own work, and only his or her own work. Any evidence that written homework submissions or source code have been copied, shared, or transmitted in any way between students (this includes using source code downloaded from the Internet or written by others in previous semesters!) will be regarded as evidence of academic dishonesty. Additionally, any evidence of sharing of information or using unauthorized information during an examination will also be regarded as evidence of academic dishonesty.
The College of Engineering and Applied Sciences regards academic dishonesty as a very serious matter, and provides for substantial penalties in such cases, such as receiving an `F' grade, or expulsion from the University. For more information, obtain a copy of the CEAS guidelines on academic dishonesty from the CEAS office.
Be advised that any evidence of academic dishonesty will be treated with utmost seriousness. Those involved will be prosecuted to the fullest extent permitted by the University and College laws. If you have a situation that may tempt you into doing something academically dishonest, resist the urge and speak with your instructor during office hours for help.
SPECIAL ASSISTANCE
If you have a physical, psychological, medical or learning disability that may impact on your ability to carry out assigned course work, I would urge that you contact the staff in the Disabled Student Services office (DSS) in the ECC building (where the Computer Store used to be), 632-6748v/tdD. DSS will review your concerns and determine with you what accommodations are necessary and appropriate. All information and documentation of disability are confidential.
If you need general computer help, you can use the Computer Science Help Desk. Services offered include setting up an account on a department server, using Windows NT, using a browser, and connecting to the campus network. The Help Desk office is located in the SBCS Office - Room 2110.


Web page created and maintained
by Richard McKenna