Computer Science and Engineering
Subject Name: OBJECT ORIENTED PROGRAMMING USING JAVA
Regulation Year: 2021-22
Course Code: Credit: 03
Course Category: Core Theory Contact hours: Theory 3 Hrs/Week
Recommended Pre-requisite: Computer Programming
COURSE OUTCOMES:
CO1: Identify classes, methods, and libraries of object-oriented programming using Java.
CO2: Design and implement a class based on attributes and behaviour of objects.
CO3: Design exception handling, threads, and utilities for problem solving using Java.
CO4: Analyze and design Java programs using advanced features such as AWT, Applet, Swing and Socket.
CO5: Design and implementation of different design patterns using Java.
COXX
Course Details:
UNIT 1: Title- Introduction: (7 Hrs)
U1.1.
Introduction to Object Oriented Programming, Introduction to Java and Java programming environments,
Fundamental Programming Structure: Data Types, variable, Typecasting, Operators and their precedence,
Introduction to Arrays
Control Flow: Java’s Selection statements (if, switch), Jump Statements (break, continue, return), Java Loop Control
Structures (while, do-while, for, Nested loops).
Classes and Object: Concept of Objects and Classes, Using Exiting Classes building your own classes, constructors
in Java (Default, parameterized), Constructor overloading, static, final, this keyword.
U1.2. Self Study:Control structures, Programs on class and object.
UNIT 2: Title:- Inheritance, Packages & Interface (7 Hrs)
U2.1.
Inheritance: Inner class, Super class, Super class constructors, Method overriding, Polymorphism, Dynamic method
Dispatch, Abstract Classes, Using final with inheritance.
Packages & Interfaces: Introduction to packages, Need of using packages and methods for importing packages,
Access Protection, Interface, Implementing Interfaces, variables in Interfaces, mechanism of extending interfaces.
U2.2. Self Study: The Object Class, programs regarding interfaces.
UNIT 3: Title:- Exception, Collection, Thread and Utility (7 Hrs)
U3.1.
Exception:What is an Exception and its fundamentals, Exception vs error, Types of Exception: Checked and
Unchecked exceptions, Exception handling mechanisms: try, catch, throw, throws and finally, Handling of Multiple
catch, throw , throws, finally, Java’s Built in exceptions, user defined exception.
Collection Framework:CollectionInterface (List, set, queue), Collection class (Linked Hashset, Stack ,LinkedList,
Arraylist)
Thread:Overview of Threads, Java Thread Model, Thread Priorities, Creating a thread, Creating Multiple threads,
Extending thread class, Synchronization Using isAlive ( ) and join ( ), wait () & notify ( ).
Utility:Simple type wrappers, Runtime memory management, object (using clone () and the cloneable Interface),
Thread, Java util
U3.2. Self Study:Implementation of Runnable interface, Programs on exception handling and Multithreading.
UNIT 4:Title:-AWT,I/O, Applet, Swing and Networking programming (7 Hrs)
U4.1.
AWT: AWT Classes window fundamentals, component, container, panel, Window, Frame, Canvas, Creating a frame
window in an Applet , working with Graphics, Control Fundamentals , Layout managers, Handling Events by
Extending AWT components.
Core java API package, reflection.
Java I/O: Classes & Interfaces, Stream classes, Byte streams, Character streams, Serialization.
Applets: Basics, Architecture, Skeleton, The HTML APPLET Tag, Passing Parameters to Applets.
Swing:Overview, Swing controls, Event Classes, Event Listener Interfaces, Adapter classes.
Network Programming:TCP/IP, Sockets, URL, Creating server and client, Communication between server and
client, Retrieving files.
U4.2. Self Study: String, Java Input/output stream classes. Remote method Invocation (RMI), UDP
UNIT 5: Title – Java Virtual machine, Design pattern (7 Hrs)
U5.1.
Native Method:Overview, creating and integrating native method to Java.
Java Virtual Machine:Organization of JVM, Garbage collector, Interpreter and JIT.
Java Persistent API: JPA architecture, Entity managers, Persistence Operations.
Design Patterns:Overview, Different types of design patterns.
U5.2. Self Study:Java Profile, Data Access Object Pattern, Service Locator and Transfer Object pattern.
Note: Five assignments to be given to the students on self study, comprising of one assignment from each
unit.
Text Books:
T1. Java The Complete Reference, Herbert Schildt, TMH, 5th Edition.
T2. Introduction to Java Programming: Liang, Pearson Education, 7th Edition.
Reference Books:
R1. Balguruswamy, Programming with JAVA, TMH.
R2. Programming with Java: Bhave&. Patekar, Pearson Education.
R3. Big Java: Horstman, Willey India, 2nd Edition.
R4. Java Programming Advanced Topics: Wigglesworth, Cengage Learning.
R5. Java How to Program: H.M. Deitel& Paul J. Deitel, PHI, 8th Edition.
Open Sources
[Link]
[Link]
Course Designed by: Surendra Nanda, Rojalina Priyadarshni, Soumya Sahoo, Anjana Mishra
Course Approved by:
Computer Science and Engineering
Subject Name: OBJECT ORIENTED PROGRAMMING USING JAVA
Regulation Year: 2021-22
Course Code: Credit:02
Course Category: Sessional Contact hours:Theory 3 Hrs/Week
Recommended Pre-requisite: Computer Programming
COURSE OUTCOMES:
CO1:Identify classes, methods, and libraries of object-oriented programming using Java.
CO2:Design and implement a class based on attributes and behaviour of objects.
CO3:Design exception handling, threads, and utilities for problem solving using Java.
CO4:Analyze and design Java programs using advanced features such as AWT, Applet, Swing and Socket.
CO5:Design and implementation of different design patterns using Java.
COXX
Course Details:
1. Introduction, Compiling & executing a java program.
2. Data types & variables, decision control structures: if, nested if etc. loop control structures: do, while, for etc.
3. Classes and objects.
4. data abstraction & data hiding, inheritance.
5. Interfaces and inner classes.
6. Exception handlings.
7. Threads.
8. Applet, Swing and event handling.
9. Wrapper classes, String, I/O programs.
10. Collection framework and JDBC.
List of Practicals:
Experiment No. 1: Basic java programs
a. developing
b. compiling
c. executing
Experiment No. 2: Programs to Understand Different Loop and method Concept.
a. Method overloading
b. Implementation of different loops
c. Implementation of Function with default arguments
Experiment No. 3: Program to understand class and object.
a. Program to differentiate between class and object.
b. Program to implement array of objects.
c. Implementation of static data members and member methods.
Experiment No. 4: Programs to understand data abstraction & data hiding, inheritance.
a. Single Inheritance
b. Multiple Inheritance
c. Super keyword
Experiment No. 5: Program to implement interfaces and inner classes
a. Nested and inner class
b. Implementing interfaces
c. Dynamic method dispatch
Experiment No. 6: Programs to implement exception handlings
a. try, catch and throw
b. throw vs throws
c. finally
d. user defined exceptions
Experiment No. 7: Programs to implement Threads
a. ways of creating threads
b. creating multiple threads
c. join(), isAlive(),wait(),notify().
d. Synchronizing threads
Experiment No. 8: Program to implement Applet, Swing, Event handling programs
a. ways of running applet programs
b. Creation of Form and Panel
Experiment No. 9: Program to implement wrapper classes, String, I/O programs
a. Use of wrapper classes
b. Use of different string methods
c. I/O programs
Experiment No. 10: Programs to implement collection framework and JDBC.
a. Programs on list and set.
b. Program on JDBC.
Text Books:
1. Java The Complete Reference, Herbert Schildt, TMH, 5th Edition.
2. Introduction to Java Programming: Liang, Pearson Education, 7th Edition.
Reference Books:
1. Balguruswamy, Programming with JAVA, TMH.
2. Programming with Java: Bhave &. Patekar, Pearson Education.
3. Big Java: Horstman, Willey India, 2nd Edition.
4. Java Programming Advanced Topics: Wigglesworth, Cengage Learning.
5. Java How to Program: H.M. Deitel & Paul J. Deitel, PHI, 8th Edition
Open Sources
[Link]
[Link]
Course Designed by: Surendra Nanda, Rojalina Priyadarshni, Soumya Sahoo, Anjana Mishra
Course Approved by: