CIS 257 : Object-Oriented JAVA Programming II

The course addresses software development using advanced object-oriented concepts and JAVA. It covers concurrency and synchronization issues and advanced topics of the object paradigm such as inheritance and polymorphism. It introduces the programming of graphics using JAVA Swing classes and examines File Streams and I/O Processing in detail. It compares the procedural paradigm with the object paradigm. It also addresses issues of programming with multiple processes and programming of systems with exception-handling capabilities. These concepts are introduced in the context of developing software using software tools, including libraries of components. Three lecture hours and two lab hours per week. Approximately 3-5 hours per week of computer time will be required to complete the programming assignments. Competency met: Technical Literacy (8.0) Spring


  1. Understand the principals of the object-oriented programming.
  2. Learn concepts of programming by contract.
  3. Design and implement classes of objects.
  4. Use inheritance and polymorphism.
  5. Create applications using graphical user interface.
  6. Implement recursive algorithms and understand recursive programming.