Object Oriented Programming in Java
0%
Course Title: Object Oriented Programming in Java
Course No: CACS204
Nature of the Course: Theory + Lab
Semester: 3
Full Marks: 20 + 20 + 60
Pass Marks: 8 + 8 + 24
Credit Hours: 3
Course Description
Course Objectives
Course Contents
2.1. Primitive Data Types
- Integers
- Floating-Point types
- Characters
- Booleans
2.2. User-Defined Data Types
- Declarations
- Constants
- Identifiers
- Literals
- Type Conversion and Casting
2.3. Variables
- Variable Definition and Assignment
- Default Variable Initializations
2.9. Using Operators
- Arithmetic
- Bitwise
- Relational
- Logical
- Assignment
- Conditional
- Shift
- Ternary
- Auto-increment and Auto-decrement
2.10. Using Control Statements
- Branching: if, switch
- Looping: while, do-while, for
- Jumping statements: break, continue and return
3.8. Constructors
- Default constructors
- Parameterized constructors
3.9. More on methods
- Passing by Value
- Passing by Reference
- Access Control
- Methods that Return Values
4.1. Inheritance
- Using 'extends' keyword
- Subclasses and Superclasses
- 'super' keyword usage
- Overriding Methods
- Dynamic Method Dispatch
- The Object class
- Abstract and Final Classes
4.2. Packages
- Defining a Package
- Importing a Package
- Access Control
4.3. Interfaces
- Defining an Interface
- Implementing and applying interfaces
6. Handling Strings
2 hrs
7. Threads
3 hrs
7.1. Create/Instantiate/Start New Threads
- Extending java.lang.Thread
- Implementing java.lang.Runnable Interface
8. I/O and Streams
2 hrs
9.1. Using java.lang Package
- java.lang.Math
- Wrapper classes and associated methods
9.2. Using java.util package
- Core classes: Vector, Stack, Dictionary, Hashtable, Enumerations, Random Number Generation
10.2. Map/List/Set Implementations
- Map Interface
- List Interface
- Set Interface
10.3. Collection Classes
- Array List
- Linked List
- Hash Set
- Tree Set
11.5. Layout Management
- Flow Layout
- Border Layout
- Grid Layout
Laboratory Works
- 1.Laboratory Work covering all course topics
Text Books
- 1.Deitel & Dietel, "Java: How to program", 9th Edition, Pearson Education, 2011, ISBN: 9780273759768
- 2.Herbert Schildt, "Java: The Complete Reference", Seventh Edition, McGraw-Hill 2006, ISBN: 0072263857
Reference Books
- 1.Bruce Eckel, "Thinking in Java", 4th Edition, Prentice Hall, 2006, ISBN: 0-13-187248-6
- 2.Cay Horstmann and Grazy Cornell, "Core Java Volume I-Fundamentals", Ninth Edition, Prentice Hall, 2012, ISBN: 978-0137081899
- 3.E. Balagurusamy, "Programming with Java: A Primer", 4th Edition, Tata McGraw Hill Publication, India