Course Code: Course Title Concepts of Object Oriented Programming TPC 3 2 4
SWE2005
Version No. 4.0
Course Pre-
requisites/ Co- None
requisites
Anti-requisites (if
any)
Objectives: 1. To understand the concepts of object-oriented, event driven, and
concurrent programming paradigms and develop skills by using these
paradigms in Java.
2. To understand the principals of inheritance, dynamic polymorphism and
interfaces.
3. To learn writing a computer program to solve specified problems.
4. To enable using the Java SDK environment to create, debug and run
simple applications.
Expected Outcome: On Completion of the course the students shall be able to
1. Understand the structure of the Java programming language
2. Identify classes, objects, members of a class and relationships
among them needed for a specific problem
3. Develop applications using packages, interfaces and also
database connection.
4. Develop Java programs to implement error handling techniques
using exception handling
5. Develop applications using Object Oriented Programming
principals and proper programming structure
6. Develop and understand multithreaded applications with
synchronization
Module No. 1 Object-Oriented Programming – Fundamentals 8 Hours
Features of OOP – Data types, variables, Array, Operators, String function, Control statements, Objects and
Classes in Java – Defining Classes – Methods - Access Specifiers – Static Members – Constructors, this
Keyword-Encapsulation.
Module No. 2 Inheritance, Polymorphism, Packages 8 Hours
Inheritance: Inheritance Hierarchies, super keyword – final keyword-final classes and methods.
Polymorphism: dynamic binding, method overriding. Abstraction-abstract classes and methods. The Object
class –– Object Cloning – Inner Classes-Garbage Collection - Finalize Method.
Module No. 3 Packages, Interfaces and JDBC 7 Hours
Packages and Interfaces -Interfaces - Interfaces vs. Abstract classes, defining an interface, implementing
interfaces - extending interfaces. Database Programming using JDBC Introduction to JDBC, JDBC Drivers,
JDBC connection.
Module No. 4 Exception Handling 8 Hours
Exceptions – Exception Hierarchy-– Throwing and Catching Exceptions-Multiple Catch Clause-Nested Try
statement- throw-throws-finally- Built in exceptions - User Defined Exceptions.
Module No. 5 The Collections Framework and Generic Programming 7 Hours
Collection, overview, Collection interface –List, Set, Map, Collection Classes- Array List, HashSet,
HashMap- Using an Iterator- For-Each-Comparators, Wrapper classes. Motivation for Generic Programming
– Generic Classes and Methods – Bounded Types –Wildcard Arguments –Generic Constructors and
Interfaces.
Module No. 6 Concurrent Programming 7 Hours
Multi-Threaded Programming – Process Vs Thread - Thread Life Cycle - Thread class – Runnable
interface- Thread Creation- Interrupting Threads – Thread States – Thread Properties –-Thread Control and
Priorities - Inter Thread Communication -Thread Synchronization – Synchronization.
Text Books
1. Herbert Schildt, “Java: The Complete Reference”, McGraw-Hill Education, Twelfth edition,2021.
References
1. Kathy Sierra, Bert Bates, Trisha Gee, “Head First Java: A Brain-Friendly Guide”, Shroff Publishers
& Distributor, Third Edition, June 2022
2. Deitel “Java- How to Program:” Pearson Education, Asia, Eleventh edition 2018.
3. George Reese “Database Programming with JDBC & Java”, O'Reilly Media, Inc. ,Second Edition
2000 .
Lab Exercises
1. Write a Java Program to demonstrate control statements.
2. Write a Java Program to implement array of objects.
3. Write a Java Program to demonstrate String and String function.
4. Write a Java Program to define a class, describe its constructor, overload the Constructors
and instantiate its object
5. Write a Java Program to define a class, define instance methods for setting and Retrieving
values of instance variables and instantiate its object
6. Write a Java Program to define a class, define instance methods and overload them and use
them for dynamic method invocation
7. Write a Java Program to implement Wrapper classes and their methods.
8. Write a Java Program to implement inheritance and demonstrate use of method overriding.
9. Write a Java Program to implement multilevel inheritance by applying various access
controls to its data members and methods.
10. Write a Java program to demonstrate use of implementing interfaces.
11. Write a Java program to implement the concept of importing classes from user defined
package and creating packages
12. Write a program to implement the concept of threading by implementing Runnable
Interface
13. Write a Java program to implement the concept of Exception Handling using predefined
exception.
14. Write a Java program to implement the concept of Exception Handling by creating user
defined exceptions.
15. Write a Java program using Collections
16. Write a Java Program using Generics
17. Write a Java Program to implement multi-threading.
18. Write a Java Program to implement Synchronization.
19. Write a Java Program to implement inter thread communication.
20. Write a java Program to demonstrate JDBC connection.
Continuous Assessment Test-1 20%
Mode of Evaluation Continuous Assessment Test-2 20%
Final Assessment Test 20%
Cumulative Lab Exercises 25%
Practical Assessment (Mini Project) 15%
Prepared by Dr. Devarakonda Nagaraju
Recommended by the 13th BoS, 15-11-2023
Board of Studies on
Date of Approval by 11th Academic Council, 22-11-2023
the Academic Council