SUNY Korea Computing Society
CSE 114 - Introduction to Object-Oriented Programming
CSE 114 - Introduction to Object-Oriented Programming
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.
| Details | Description |
|---|---|
| Credits | 4 |
| Prerequisites | Prerequisites: Level 4 or higher on the math placement exam |
| Advisory Prerequisite | CSE101 or ISE108 |
| SBC | TECH |
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
Course Topics
| Topic | Materials |
|---|---|
| Installing Java, Using Java API Website | Oracle |
| Program Structure, Methods, Variables, Types | Crash Course |
| Abstraction, Conditionals | |
| Iteration, Arrays | |
| Advanced Arrays, 2D Arrays | |
| Defining Classes and Creating Objects | |
| Assertions, Reasoning and Logic | |
| Multiple Classes, Static vs Dynamic Objects, Sorting, Searching | Alex Lee |
| Objects: Composition, Representation, Passing | |
| IntelliJ, IntelliJ Debugger | JetBrains |
| Static/Dynamic Members, Visibility Control, ‘This’ | GfG |
| Comparing Objects, Object Sorting, Compound Statements, Exception Handling, File I/O | |
| Interfaces, Inheritance | Medium |
| Abstract Classes | Medium |
| Recursion, ArrayLists | GfG |
Textbooks
Y. Daniel Liang, Introduction to Java Programming: Brief Version, 10th Edition
Think Java How to Think Like a Computer Scientist, Java Version 6.6.0
Edit this page on GitHub