CSE 114: Introduction to Object-Oriented Programming

Spring 2024 Lecture Section 1

Instructor: Dr. Paul Fodor


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. (https://www.cs.stonybrook.edu/students/Undergraduate-Studies/courses/CSE114)

See Syllabus here (or in the above menu).

YouTube channels for past semesters: https://youtube.com/playlist?list=PLRvJ_2dlxL9EIVcjN__ApbyXFiocOSbZM (from Spring 2021), https://www.youtube.com/playlist?list=PLRvJ_2dlxL9ECXq1DQyABaCjHOUlpXl00 (from Summer 2018) , https://youtube.com/@stonybrookcs , https://www.youtube.com/@stonybrookcs/playlists (other courses that I taught).


Instructor: Dr. Paul Fodor
214 New Computer Science Department, Stony Brook University
Office hours: Tuesdays and Thursdays 12-1:30pm on Google Meet only: https://meet.google.com/xyu-jhqc-bdx
Email: paul.fodor@stonybrook.edu
Phone: (631) 632-9820

Class Time and Place

  • CSE 114-01 (49271) Lecture section 1: TuTh 8:30AM - 9:50AM, Light Engineering 102.
  • CSE 114-L01 (49272) Lab section 1: TuTh 10:00AM - 11:20AM, Computer Science 2114.
  • CSE 114-L02 (49273) Lab section 2: TuTh 11:30AM - 12:50PM, Computer Science 2114.
  • CSE 114-L03 (49274) Lab section 3: TuTh 1:00PM - 2:20PM, Computer Science 2114.
  • CSE 114-L04 (49275) Lab section 4: TuTh 5:30PM - 7:00PM, Computer Science 2120.

Lecture Notes and Reading Assignments

The following schedule is tentative and subject to change. The homework assignments, labs and exams are posted on Brightspace: http://Brightspace.stonybrook.edu

Week Date Lecture Topics/Notes Readings
1 Tu. 1/23 Administrative (course information) n/a
Th. 1/25 Introduction to Computers, Programs, and Java Read Liang ch. 1
2 Tu. 1/30 Introduction to Computers, Programs, and Java (cont.) n/a
Th. 2/1 Elementary Programming Read Liang ch. 2
3 Tu. 2/6 Elementary Programming (cont.) n/a
Th. 2/8 Selections Read Liang ch. 3
4 Tu. 2/13 Mathematical Functions, Characters, and Strings Read Liang ch. 4
Th. 2/15 Loops Read Liang ch.5
5 Tu. 2/20 Methods Read Liang ch. 6
Th. 2/22 Arrays Read Liang ch. 7
6 Tu. 2/27 Arrays (cont.) n/a
Th. 2/29 Multidimensional Arrays Read Liang ch. 8
7 Tu. 3/5 Midterm 1 review n/a
Th. 3/7 MIDTERM EXAM 1: closed book in-person exam, in classroom, during class time (80 minutes) n/a
8 Tu. 3/12 Spring recess (no class) n/a
9 Tu. 3/19 Objects and Classes Read Liang ch. 10
Th. 3/21 Object and Classes (cont.) n/a
10 Tu. 3/26 Object-Oriented Thinking Read Liang ch. 11
Th. 3/28 Inheritance and Polymorphism n/a
11 Tu. 4/2 Inheritance and Polymorphism (cont.) Read Liang ch. 12
Th. 4/4 Exception Handling and Text I/O Read Liang ch. 13
12 Tu. 4/9 Midterm 2 review n/a
Th. 4/11 MIDTERM EXAM 2: closed book in-person exam, in classroom, during class time (80 minutes) n/a
13 Tu. 4/16 Abstract Classes and Interfaces Read Liang ch. 13
Th. 4/18 Abstract Classes and Interfaces (cont.) n/a
14 Tu. 4/23 Abstract Classes and Interfaces (cont.) n/a
Th. 4/25 Recursion Read Liang ch. 18
15 Tu. 4/30 Recursion n/a
Th. 5/2 Optional (if time permits): JavaFX Basics, Event-Driven Programming, JavaFX UI Controls and Multimedia, Binary IO Read Liang chs. 14, 15, 16 and 17
Final exam   FINAL EXAM: Tuesday, May 14, 2024, closed book in-person exam, in classroom, 8:00-10:00 AM (120 minutes) n/a

Page maintained by Paul Fodor