Woldia University Institute of Technology
School of Computing
Course Title Object Oriented Programming
Course Code CoSc2051
CP 5 (2hrs Lecture, 3hrs Laboratory)
Pre-requisites Computer Programming II
Year II, Semester : II , 2015, Computer Science 2nd year student
Instructor Name Daniel M.
Learning Outcomes
Upon successful completion of the course, students will be able to:
o Explain the basic object oriented concepts
o Successfully code, debug and run programs with appropriate development environment
o Work on more advanced programs
o Have clear differentiation between structural and object oriented programming paradigms
Course contents
Weeks Lecture Topics Object variables
1- Chapter 1: Introduction to Object-Oriented Defining a class
2
Programming (OOP) instantiation and initializing class objects
o printing to the console
Types of programming paradigm o methods and messages
Overview of Java Programming and types of Java o parameter passing
Program o comparing and identifying objects
Definition of Java Application, Java Applets o destroying objects
Editing, Compiling and Interpreting o enumerated types
Why Java? Instance fields, Construction and method
The JVM and Byte Code constructors
Overview of OOP Concepts o default and parameterized
o overloaded constructors
Reading assignment:
o methods
o association, aggregation, pattern
o Classes, Objects access specifiers
o Members, class member visibility accessors and mutators
o encapsulation, inheritance and polymorphism encapsulation
calling and returning methods
3-5 Chapter 2: Objects and Classes o static and instance members
Data types, identifiers, keywords, Number types,
strings, constants
Operators and operator precedence
Control statement
o If, if else, switch , ternary operator..
o Loop: for loop, while loop, do..while loop,
Enhanced for loop
Array
o One dimensional array
o Multidimensional
6- Chapter 3: Inheritance and Polymorphism
7
Cont.
Encapsulation Exception handling overview
setter and getter The causes of exceptions
Abstraction The Throwable class hierarchy
o abstract class Handling of an exception
o interface Declaring exception
Inheritance Defining and throwing Exception
o Concept of inheritance The throw statements
o Super classes and subclasses The finally clause
o Protected members
o Overriding methods 12-13 Chapter 5: Packages
o Using this() and super()
o Use of final keyword with inheritance Package
o Constructors in subclasses The import statement
o Casting Static imports
Polymorphism CLASSPATH and import
o Assigning reference of subclass to superclass-type Defining Packages
variable Package Scope
o Assigning a superclass reference to subclass-type 14-15 Chapter 5: Data structures
variable
The Set
o Subclass method calls via superclass-type variable
o Summary of allowed assignments between Set Implementation
superclass and subclass variables The List
List Implementation
8-9 Chapter 4: Exception Handling The Queue
Queue Implementation
Map dictionary
Streams and files (extra)
16 Final Exam
Assessment % of Final Grade
Quizzes 10
Lab /Project 20
Mid-Exam 20
Final Exam 50
Text Books
1.Java How To program 10th edition 2015 , Paul Deitel and Harvey Deitel
2.Eckel, Bruce. Thinking in Java. 4th Ed. New Jersey: Prentice Hal
References
1. Y. Daniel Liang, 2009. Int. to Java Programming Compressive version, Seventh Edition. Atlantic State University
2. R. Sahoo& G. Sahoo, JAVA 2 The complete reference book; New Delhi: Prentice- Hall of India
3. C. Thomas Wu, An introduction to Object-Oriented Programming with Java; McGraw Hill.
4. John Lewis & William Loftus,. JAVA Software Solutions: - Foundations of Program Design; Addison-Wesley.
Approval Section
This course outline is approved by:
Name Signature Date
Instructor Daniel M. __________ _________
Quality Assurance _____________ __________ _________
Department Head _____________ __________ _________