0% found this document useful (0 votes)
21 views39 pages

ObjectOrientedProgramming 25ECSC204 Java 2025-26 Updated

The document outlines the course plan for Object Oriented Programming (Course Code: 25ECSC204) for the IV semester of the 2025-26 academic year, detailing prerequisites, course outcomes, competencies, and evaluation schemes. It includes a comprehensive breakdown of course content, teaching hours, assessment methods, and a chapter-wise plan for instruction. The course aims to equip students with knowledge and skills in object-oriented programming using Java, including design patterns and functional programming principles.

Uploaded by

01fe24bcs164
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views39 pages

ObjectOrientedProgramming 25ECSC204 Java 2025-26 Updated

The document outlines the course plan for Object Oriented Programming (Course Code: 25ECSC204) for the IV semester of the 2025-26 academic year, detailing prerequisites, course outcomes, competencies, and evaluation schemes. It includes a comprehensive breakdown of course content, teaching hours, assessment methods, and a chapter-wise plan for instruction. The course aims to equip students with knowledge and skills in object-oriented programming using Java, including design patterns and functional programming principles.

Uploaded by

01fe24bcs164
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Department Of Computer Science & Engineering

FMTH0306/Rev.1.0
Course Plan
Semester: IV Year: 2025-26
Course Title: Object Oriented Programming Course Code:25ECSC204
Total Contact Hours: 50 Duration of ESA: 3 Hours
ISA Marks:50 ESA Marks:50
Lesson Plan Author: Mr. K.M.M. Rajashekharaiah, Dr. Date:
G.S Hanchinamani, Mr. Manjunath Gonal, Mrs.
Vijayalakshmi S, Mrs. Nirmal Patil
Checked By: Dr. Narayan D.G. Date:

Prerequisites: Knowledge of
i. C Programming
ii. Data Structures and Algorithms
Course Outcomes (COs):
At the end of the course the student should be able to:

1. Describe the object-oriented programming paradigm.


2. Apply object oriented principles to design a solution using JAVA.
3. Design reusable code using Java packages, interfaces and collection framework.
4. Apply functional programming principles to design serverless web services.
5. Design object-oriented solution using UML for real-world problems.

Page 1 of 39.
Department Of Computer Science & Engineering

Course Articulation Matrix: Mapping of Course Outcomes (COs) with Program


Outcomes (POs)
Course Title: Object Oriented Programming Semester: IV
Course Code: 25ECSC204 Year: 2025-26

Course Outcomes (COs) / 1 2 3 4 5 6 7 8 9 10 11 12 13


Program Outcomes (POs)
1. Describe the object-oriented H
programming paradigm.
2. Apply object oriented
principles to design a H
solution using JAVA.
3. Design reusable code using
Java packages, interfaces H
and collection framework.
4. Apply functional
programming principles to H
design server less web
services.
5. Design object-oriented
solution using UML for H
real-world problems.

Degree of compliance L: Low M: Medium H: High

Page 2 of 39.
Department Of Computer Science & Engineering

Competency addressed in the Course and corresponding Performance Indicators

Competency Performance Indicators Course Specific Performance Indicators


1.3 Demonstrate competency 1.3.3 Apply the principles [Link] Apply OOP principles, java
in engineering fundamentals. of computer science platform features to develop java
including algorithms, programs using basic data types.
data structures, and [Link] Interpret problem statements and
programming to develop illustrate appropriate Java class structures,
a solution for complex method logic, and/or object interactions,
engineering problems. methods with objects as parameters and
nested classes for solving moderately
complex engineering problems.

2.1: Demonstrate an ability to 2.1.2: Identify critical [Link] Identify and Apply inheritance,
identify and define complex systems/sub systems, method overriding, dynamic method
engineering problems by variables, and constraints dispatch, abstract class, interfaces and
exception concept to implement the given
understanding real-world that characterize the
problem.
contexts and constraints. problem environment by [Link] Apply lambda expressions and/or
analyzing practical streams API to solve a problem.
contexts and real-world [Link] Apply spring boot/RESTful API to
limitations. build a solution for real world problems.
[Link] Apply appropriate collection
interfaces and classes (List, Set, Map, and
their implementations) to organize, store,
and manipulate data efficiently based on
problem requirements and usage
scenarios.
3.3: Demonstrate an ability to 3.2.2: Build [Link] Identify the relationship between
select an optimal design models/prototypes to the classes/objects to establish
solution considering cost- develop chosen design associations/aggregation/composition in
the design and interpret the design
effectiveness and solutions.
effectively
environmental impact.
[Link] Decompose complex problem
scenarios into well-defined classes and
subsystems by applying appropriate
design patterns (suitable structural and
behavioral design patterns) to manage
responsibilities and object creation.

Eg: 1.2.3: Represents Program Outcome ‘1’, Competency ‘2’ and Performance Indicators ‘3’.

Page 3 of 39.
Department Of Computer Science & Engineering

Course Content

Course Code: 25ECSC204 Course Title: Object Oriented Programming


L-T-P : 4-0-0 Credits: 4 Contact hours: 4 hrs/week
ISA Marks: 50 ESA Marks: 50 Total Marks: 100
Teaching Hrs: 50 Tutorial/ Practical Hrs : -- Exam Duration: 3 Hrs

Content Hrs
Unit – 1
Chapter No 1. Object Oriented Programming (OOP) Concepts and JAVA 06 hrs
Language Fundamentals: Introduction to OOP, Object Oriented Paradigm, Applications
of OOP. Features of JAVA, JVM, JDK, Source File Structure. Programming constructs
and String Handling. Class Diagrams-UML notations. Types of relations between
classes.
Chapter No 2. Classes and Objects 08 hrs.
Class Fundamentals, Declaring objects, Assigning object reference variables, Introducing
methods, Constructors, this key word, Garbage collection: The finalize method. A closer
Look at Methods and Classes: Overloading: Methods, Constructors. Using objects as
Parameters, Returning objects, Access control. Understanding static and final keywords.
Introducing nested and inner classes.
Chapter No. 3 Inheritance and Polymorphism 06 hrs.
Inheritance: Basics, Usage of super key word, Method overriding, Dynamic method
dispatch, Abstract classes, Object class.
Unit – 2
Chapter No. 4 Packages, Interfaces &Exception handling 10 hrs.
Packages and Interfaces: Packages, Access protection, Importing packages. Interfaces.
Exception Handling: Fundamentals, Exception Types, Using try, catch, throw, throws
and finally, Multiple catch, Nested try statements, and user defined exceptions.
Chapter No. 5: Collections Framework: Introduction, List Interface, List 04 hrs.
Implementation Classes, Set Interface, Set Implementation Classes, The Map Interface,
Map Implementation Classes.
Chapter No. 6: Lambda Expressions & Streams API: Functional programming, 06 hrs.
Functional interface, Bulk operations on collections, Basics of Streams, Reduction
operations, Iterators and Streams
Unit – 3
Chapter No. 7 Design Patterns: Creational, Structural and Behavioral design patterns. 5 hrs.
Chapter No. 8: Spring Boot: Overview, key features, architecture, setting-up a Spring 5 hrs.
Boot, RESTful API, spring data JPA, CRUD Operations.

Page 4 of 39.
Department Of Computer Science & Engineering

Textbooks
1. Herbert Schildt, “The Complete Reference”, 9th Edition, McGraw-Hill.
Reference Books
1. Kathy Sierra and Bert Bates, Head First JAVA, 2, O'Reilly Media.
2. Introduction to Java Programming, Liang Y D, Pearson, 7th Edition.

Evaluation Scheme
ISA Scheme
Assessment Weightage in Marks
ISA-1 20
ISA-2 20
Activity (UML 10
Design)
Total 50

Course Unitization for Minor Exams and End Semester Assessment


No. of No. of No. of No. of
Topics / Chapters Teaching Questions Questions Questions in Questions in
Hours in ISA-1 in ISA-2 Activity ESA
Unit I
Chapter No 1. Object Oriented
Programming (OOP) Concepts and 6 1.00 - - 1.00
JAVA Language Fundamentals
Chapter No 2. Classes and Objects 8 1.00 - - 1.00
Chapter No. 3 Inheritance
6 1.00 - - 1.00
and Polymorphism
Unit II
Chapter No. 4 Packages , Interfaces
10 - 1.5 - 1.5
&Exception handling
Chapter No. 5: Collections
4 - 0.5 - 0.5
Framework
Chapter No. 6: Lambda Expressions
6 - 1.00 - 1.00
& Streams API
Unit III
Chapter No. 7 Spring Boot 5 - - - 1.00
Chapter No. 8: Design Patterns 5 - - 1.00 1.00

Page 5 of 39.
Department Of Computer Science & Engineering

Note
1. Each Question carries 20 marks and may consists of sub-questions.
2. Mixing of sub-questions from different chapters within a unit (only for Unit I and Unit II)
is allowed in ISA I, II and ESA
3. Answer 5 full questions of 20 marks each (two full questions from Unit I, II and one full
questions from Unit III) out of 8 questions in ESA.

Course Assessment Plan

Course Title: Object Oriented Programming Code: 25ECSC204


Course outcomes (COs) Weightage Assessment Methods
in ISA 1 ISA 2 Activity End semester
assessment Exam Exam (Design) Assessment
1. Describe the object-oriented
12% ✓ ✓
programming paradigm.
2. Apply object oriented
✓ ✓
principles to design a solution 25%
using JAVA.
3. Design reusable code using ✓ ✓
Java packages, interfaces and 25%
collection framework.
4. Apply functional programming
✓ ✓
principles to design server less 25%
web services.
5. Design object-oriented solution ✓ ✓ ✓
using UML for real-world ✓
12%
problems.

Weightage 20% 20% 10% 50%

Page 6 of 39.
Department Of Computer Science & Engineering

Course Activity Rubrics:

Parameter Marks PI CO BL

Identify classes and relationships 5 3.2.2 5 L4

Draw detailed Class diagrams 5 3.2.2 5 L4

Parameters Marks Excellent(4-5M) Good(2-3M) Poor(0-1M)


Design- Identify 5 The student is able to The student is able The student is unable
classes and identify all type of to identify most to identify key type of
relationships classes, relationships type of classes, classes, relations and
PI: 3.2.2 and design patterns. relations and design pattern.
CO: 5 design pattern.
BL: L4

Design- Draw 5 The student is able to The student is able The student is unable to
detailed Class draw the complete to draw the partial draw the class diagram.
diagrams class diagram using class diagram using
PI: 3.2.2 UML notations and UML notations and
CO: 5 design patterns. partial design
BL: L4 pattern.

Date: HOD CSE

Page 7 of 39.
Department Of Computer Science & Engineering

Chapter wise Plan

Course Title and Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title:1. Object Oriented Programming
Planned Hours:6hrs
(OOP) Concepts and JAVA Language Fundamentals

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Differentiate between structured and object Oriented 1 L3 1.3.3
Programming.
2. Explain the principles of Object Oriented Programming (OOP). 1 L2 1.3.3
3. Explain java platform features. 1 L2 1.3.3
4. Write java programs using arrays, strings and basic types. 1 L3 1.3.3
5. Draw the class diagram using proper UML notations 5 L3 3.3.2

Lesson Schedule
Class No. - Portion covered per hour
1. Introduction to OOP, Object Oriented Paradigm, Applications of OOP.
2. Features of JAVA, JVM, JDK, Source File Structure.
3. Programming constructs, arrays.
4. String Handling
5. Class Diagrams-UML notations.
6. Types of relations between classes.

Review Questions
[Link]. - Questions TLOs BL PI Code
1. Compare and contrast structured and object oriented 1 L2 1.3.3
programming paradigms.
2. List and explain OOP features. 1 L2 1.3.3
3. Explain java features. 1 L2 1.3.3
4. Explain the structure of java programs with an example. 1 L2 1.3.3
5. Explain arrays? Write a sample code to demonstrate array of 3 L3 1.3.3
basic type and its usage.
6. How many objects will be created in the following code? 3 L2 1.3.3
String s1=”kletech”;
String s2=”kletech”;
7. Explain that the java is platform independent programming 2 L2 1.3.3

Page 8 of 39.
Department Of Computer Science & Engineering

language.
8. Demonstrate the strings are immutable in java. 3 L3 1.3.3
9. Differentiate string and StringBuffer classes with example. 3 L3 1.3.3
10. Write the output of the following code snippet. 3 L3 1.3.3
class StringComparisonUsingEqualsMethod{
public static void main(String args[]){
String s1="Sachin";
String s2="Sachin";
String s3=new String("Sachin");
String s4="Saurav";
[Link]([Link](s2));//true
[Link]([Link](s3));//true
[Link]([Link](s4));//false
}
}
11. Explain the Object-Oriented Paradigm and discuss how it 1 L2 1.3.3
supports real-world modelling with suitable examples.

12. Describe the roles of JVM, JRE, and JDK in the Java execution 2 L3 1.3.3
environment. How do they interact during program execution?

13. Write a Java program to perform basic string operations such 3 L3 1.3.3
as length calculation, concatenation, and character extraction.

14. Draw a simple UML class diagram for a Student–Course 5 L3 3.2.2


system and explain the type of relationship used between the
classes.

15. Differentiate between one-dimensional and two-dimensional 3 L3 1.3.3


arrays in Java with suitable code examples and use cases.

Page 9 of 39.
Department Of Computer Science & Engineering

Course Title and Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title: 2. Classes and Objects Planned Hours: 8hrs

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
[Link] classes and objects. 2 L2 1.3.3
[Link] constructor and overloading of method to solve a given 2 L2 1.3.3
problem.
[Link] static members concept to solve a given problem. 2 L3 1.3.3
[Link] methods with objects as parameter and return value. 2 L2 1.3.3
[Link] nested and inner classes concepts to solve a given 2 L3 1.3.3
problem.
[Link] class diagrams using UML notations for a given scenario. 2 L3 3.2.2

Lesson Schedule
Class No. - Portion covered per hour
1. Class Fundamentals, Declaring objects, Assigning object reference variables.
2. Introducing methods, Constructors, this key word, Garbage collection: The finalize
method.
3. A closer Look at Methods and Classes.
4. Overloading: Methods, Constructors.
5. Overloading: Methods, Constructors.
6. Using objects as Parameters, Returning objects.
7. Access control. Understanding static and final keyword.
8. Nested and inner classes.

Review Questions
[Link]. - Questions TLOs BL PI Code
1. What is class and object? Write a program demonstrating access 1 L3 1.3.3
of same object with more than one reference?
2. Discuss i) Default constructor ii) Parameterized constructor iii) 1 L2 1.3.3
Copy constructor with examples.
3. Demonstrate passing array of objects to a function with sample 1 L3 1.3.3
code.
4. Create a class Point with members intx,y. Create two Point 2 L3 1.3.3
objects and initialize them different values for x and y. Then
swap the member values of the objects with each other.
5. Create a class Line with members p1 and p2 which are objects 2 L3 1.3.3

Page 10 of 39.
Department Of Computer Science & Engineering

of another class Point(as given in above question). Create


function that accepts a object line and prints its magnitude.
6. What is the difference between a local variable and a data 1 L2 1.3.3
member?
7. Explain the need of method overloading with a suitable 2 L3 1.3.3
example.
8. A cricket player information needs to be maintained such as 4 L3 1.3.3
name, no of innings, total runs scored and batting average.
Write a java program to satisfy following requirements
I. Information of at least 5 players needs to maintained
II. Player information can be displayed whenever required.
III. Batting average of a player can be updated anytime.
IV. Player with highest batting average can be displayed form
a set of players.
V. Players are initialized whenever they are created.
9. Consider simple library application. library has some books and 4 L3 1.3.3
librarian can issue the books to students. Library can list the
books that are issued to the students with their details.
i. Create a Library class with memberscollegeName, librarian,
books. Include methods to issue books to students and to
display list of books that are issued to students.
ii. Create a class Book with members title, publisher, student-
issued to- and display method.
iii. Create a class Student with members name, srn, mobileNum
and display method.
iv. Identify relationship between the classes. Include
appropriate parameterized constructors in each class.
10. Explain the different types of has-relationships between objects 6 L3 3.2.2
and consider the following objects of banking domain
• BankAccount(accNo, accBal, accType )
• AadharCard (aadharNo, name, address)
• PanCard(panNo, name)
The government India announces for its citizens to link the
objects correspondingly for smooth transactions of their bank
accounts.
Perform the following:
i. Identify the relationships between the given objects and create
the class diagram accordingly, the program should reject if
more than one adhaar or pan is linked correspondingly.
ii. Include a function to print the account details and the related
objects which shall not modify object data.

Page 11 of 39.
Department Of Computer Science & Engineering

11. Explain the significance of the this keyword with an example. 1 L2 1.3.3

12. Explain method overloading and compile-time resolution with 2 L3 1.3.3


a program.

13. Write a Java program using static data members and static 3 L3 1.3.3
methods.

14. Differentiate static nested classes and inner classes with 5 L3 1.3.3
examples.

15. Identify classes, relationships, and draw a UML class diagram 6 L3 3.2.2
for a Company–Employee system.

Page 12 of 39.
Department Of Computer Science & Engineering

Course Titleand Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title: 3. Inheritance and Planned Hours: 6hrs
Polymorphism

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
[Link] inheritance and polymorphism. 2 L2 2.1.2

[Link] different types of inheritance supported by java. 2 L2 2.1.2

[Link] method overriding and dynamic method dispatch. 2 L2 2.1.2

[Link] and create abstract classes to solve a given scenario. 2 L3 2.1.2

5. Draw the class diagram for the given class hierarchy. 2 L3 3.2.2

Lesson Schedule
Class No. - Portion covered per hour
1. Inheritance: Basics, types, application of inheritance and UML
2. Usage of super key word
3. Method overriding
4. Dynamic method dispatch
5. Abstract classes
6. Object class

Review Questions
[Link]. - Questions TLOs BL PI Code
1. Define inheritance. Explain different types of inheritance 1 L2 2.1.2
supported by java.
2. How constructors of parent class are invoked? Illustrate with a 1 L3 2.1.2
program?
3. Explain order of creation of a derived class object in a 3 L2 2.1.2
hierarchy of inherited classes.
4. Consider a class hierarchy Employee(empId, name, salary, 3 L3 2.1.2
bonus) Manager(numberOfShares) and
Salesman(numberOfSales). Assume initial bonus amount is
zero for all employees. Define a method to pay bonus and
consider type of employee while paying bonus. Write a java
program to create a structure of all the classes.

Page 13 of 39.
Department Of Computer Science & Engineering

5. Create a class hierarcy of classes CashCards (bankName, void 4 L3 2.1.2


swipe ()), CreditCard and DebitCard. The credit and debit
cards can be used to pay shopping amount and DebitCard can
be used to pay balance generated by CreditCard. Identify
suitable/missing data members and define appropriate
constructors. Write a test program to demonstrate runtime
polymorphism dynamic method despatch.
6. What inheritance relationships would you establish among the 5 L3 3.2.2
following classes and draw the class diagram for any one
domain.
Student, Professor, TeachingAssistant,
Employee, Secretary, DepartmentChair, Janitor,
SeminarSpeaker, Person, Course, Seminar, Lecture,
ComputerLab.
7. Create a super class Car with members color, name, 4 L3 2.1.2
noOfSeats, maxSpeed, speed, accelerate(), break().Then create
two sub-classes Ferrari, BMW.
i) include a constructor in Car, Car(name, color, maxSpeed,
noOfSpeed)
ii) include constructors in classes Ferrari, BMW which reuses
the constructor of CAR class
iii) over-ride methods accelerate(), break() in sub-classes
iv) write a test program to create a object of Ferrari and BMW.
Race both the cars.
8. Write the output of the following code snippet. 4 L3 2.1.2

abstract classVehicle { publicintspeed() { return0; }


class Car extendsVehicle { publicintspeed() { return60; }
classRaceCarextendsCar { publicintspeed() { return150; } ...
RaceCar racer = newRaceCar();
RaceCar racer = new Car();
Car car = newRaceCar();
Vehicle vehicle= newRaceCar();
[Link]([Link]() + ", " + [Link]() + ", " +
vehicle.
speed());
9. Explain the role of the super keyword in Java. Illustrate 1 L2 2.1.2
how it is used to invoke parent class methods and
constructors with an example.

10. Differentiate between method overloading and method 1 L2 2.1.2


overriding. Explain why method overriding is essential for

Page 14 of 39.
Department Of Computer Science & Engineering

achieving runtime polymorphism.

11. Write a Java program that demonstrates dynamic method 3 L3 2.1.2


dispatch using a base class reference pointing to different
derived class objects.

12. For a given real-world scenario of a Shape hierarchy 4 L3 2.1.2


(Shape → Circle, Rectangle, Triangle)
identify abstract methods,
implement an abstract class, and
demonstrate polymorphic behaviour using a test program.

13. An online shopping system represents products using an 5 L3 3.2.2


inheritance hierarchy.
Product is the base class with attributes productId and price,
and a method getFinalPrice().
ElectronicProduct and ClothingProduct inherit from
Product.
ElectronicProduct adds warrantyPeriod and overrides
getFinalPrice() to include tax.
ClothingProduct adds size and overrides getFinalPrice() to
apply discounts.
Base class attributes are protected; subclass attributes are
private. Draw a UML class diagram for the above
hierarchy showing:Generalization (inheritance), Access
specifiers, Method overriding.

14. You are designing a software system for a University 5 L3 2.1.2


Management System.
Entities include Person, Student, Faculty,
TeachingAssistant, and Staff.
Propose an inheritance hierarchy.
Justify your choice of base and derived classes.
Identify attributes and methods that should be inherited and
those that should be overridden.

15. In a Payment Processing System, you have a base class 5 L3 2.1.2


Payment and subclasses CreditCardPayment, UPIPayment,
and NetBankingPayment.
Which methods should be declared in the base class?
Which methods should be overridden in subclasses?
How does inheritance support extensibility when new
payment modes are added?

Page 15 of 39.
Department Of Computer Science & Engineering

UNIT II
Course Titleand Code: Object Oriented Programming(25ECSC204)
Chapter Number and Title: 4: Packages , Interfaces & Exception Planned Hours:10 hrs
handling

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Explain packages, Interfaces and Exception handling mechanism 3 L2 2.1.2
of java.
2. Write java program to create code library using packages. 3 L2 2.1.2

3. Write a java program to manage run time errors using java 3 L3 2.1.2
exception handling mechanism.
4. Write a java program to implement interfaces for a given 3 L3 2.1.2
problem specification.
5. Draw the class diagram using appropriate UML notations for the 3 L3 3.2.2
given scenario.

Lesson Schedule
Class No. - Portion covered per hour
1. Packages: Define, create, access protection and importing packages.
2. Interfaces: Define, create interface and implement.
3. Implementing polymorphism using interfaces.
4. Differences between interfaces and abstract classes.
5. Multiple inheritance and Run time polymorphism using interfaces.
6. Exceptions: Define, Exception handling fundamentals
7. Classification: Exception Types
8. Examples. Using try, catch keywords of exception handling, multiple catch blocks.
9. Using throw, throws, finally keywords to manage exceptions
10. User defined exceptions.

Review Questions
[Link]. - Questions TLOs BL PI Code
1. Explain why packages in java? 1 L2 2.1.2
2. Explain access protection supported by packages. 1 L2 2.1.2

3. Explain with an example illustrating how an interface 2 L2 2.1.2


reference variable can be used to access an object of a class
that implements the interface.

Page 16 of 39.
Department Of Computer Science & Engineering

4. List the differences between interface and abstract class. 2 L2 2.1.2


5. Define exception and explain exception types. 2 L2 2.1.2

6. Define a class CurrentDate with suitable data members. 2 L2 2.1.2


Define suitable constructor to create CurrentDate object and
accept the values from user to create date object. Identify at
least two exception/runtime error conditions and apply user
defined exceptions concept. Write a test program to create
CurrentDate object and manage errors.
7. Simulate loan application. The loans are four wheeler loan 2 L3 2.1.2
and two wheeler loan. The customer can avail either of loans
and he is provided choice. The application has to provide
functionality to calculate EMI, display the customer details
along with his loan details and pay EMI until repayment of
loan amount.
8. Which one of the following class declarations is a valid 2 L3 2.1.2
declaration of a class thatcannot be instantiated?
Select the one correct answer.
(a) class Ghost { abstract void haunt(); }
(b) abstract class Ghost { void haunt(); }
(c) abstract class Ghost { void haunt() {}; }
(d) abstract Ghost { abstract void haunt(); }
(e) static class Ghost { abstract haunt(); }
9. Consider customer can have multiple accounts like 2 L3 2.1.2
SavingsAccount and ProvidentFundAccount, the customer
can withdraw and deposit amount to savings account but not
with provident fund account (PF account), however he can
transfer amount from saving account to PF account. Identify
the need of interface in this scenario and create the classes of
the class hierarchy. Write a test program to simulate the above
scenario.
10. Draw a class diagram using appropriate UML notations for 3 L3 2.1.2
the question 7.
11. Given the following type and reference declarations, which 2 L3 2.1.2
assignment is legal?

// Type declarations:
interface I1 {}
interface I2 {}
class C1 implements I1 {}
class C2 implements I2 {}
class C3 extends C1 implements I2 {}

Page 17 of 39.
Department Of Computer Science & Engineering

// Reference declarations:
C1 obj1;
C2 obj2;
C3 obj3=null;
Select the one correct answer.
(a) obj2 = obj1;
(b) obj3 = obj1;
(c) obj3 = obj2;
(d) I1 a = obj2;
(e) I1 b = obj3;
(f) I2 c = obj1;
12. Explain how Java packages help in avoiding name conflicts 1 L2 2.1.2
and improving code reusability. Illustrate with an example
involving two packages containing classes with the same
name.

13. Write a Java program that demonstrates multiple inheritance 4 L3 2.1.2


using interfaces, and explain how Java resolves ambiguity.

14. Explain the exception handling flow in Java when multiple 3 L2 2.1.2
catch blocks and a finally block are used. Support your answer
with a suitable code snippet.

15. Design and implement a Java program that uses the throw 3 L3 2.1.2
and throws keywords to handle invalid input conditions in a
typical banking application.

16. For a Payment System scenario supporting Cash, Card, and 5 L3 3.2.2
UPI payments, identify suitable interfaces and classes, explain
how runtime polymorphism is achieved, and draw the
corresponding UML class diagram.

Page 18 of 39.
Department Of Computer Science & Engineering

Course Titleand Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title: 5: Collections Framework Planned Hours:4hrs
Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Explain the various interfaces and classes provided by 3 L2 2.1.2
collection framework.
2. Explain the advantages of collection framework. 3 L2 2.1.2
3. Identify the appropriate collection class required to implement 3 L3 2.1.2
the given scenario.
4. Illustrate the methods defined by different interfaces of 4 L3 2.1.2
collection framework.

Lesson Schedule
Class No. - Portion covered per hour
1. Introduction to Collection Framework, Interfaces and classes
2. Exploring List Interface
3. Exploring List, set and Queue interface implementation classes
4. Exploring Map Interface and its implementation class
Review Questions
[Link]. - Questions TLOs BL PI Code
1. Outline the key advantages of collection framework. 2 L2 2.1.2
2. Explain the List and Set interfaces by highlighting 1 L2 2.1.2
important methods.
3. Explain the following methods of Queue interface 1 L2 2.1.2
i) Element ii) Offer(E obj) iii) peek()
iv) poll() v) remove()
4. Suppose setA is a set that contains the strings "CPU", 4 L3 2.1.2
"RAM", and "SSD", and setB is another set that contains
the strings "RAM", "GPU", and "HDD". Answer the
following questions assuming all the statements are
executed sequentially.
a) What are the contents of setA and setB after executing
[Link](setB)?
b) What are the contents of setA and setB after executing
[Link](setB)?
c) What are the contents of setA and setB after executing
[Link](setB)?
d) What is the content of setA after executing
[Link]()?

Page 19 of 39.
Department Of Computer Science & Engineering

5. Write a java program to perform the following: 4 L3 2.1.2


i) Create a class Book(bookId, bookTitle,
bookAuthor, price)
ii) Create a LinkedList object and add few books
to it.
iii) Call the methods on linkedList to obtain first
book, last book added.
iv) Call methods to remove the first and last book
added.
6. Write a program using the appropriate collection for the 3 L3 2.1.2
following scenario which stores the objects sequentially.
A bank maintains a list of BankAccount objects. Each
account has details such as account number, account
holder name, and balance. The bank should be able to
display the list of accounts with zero balance and the list
of accounts with non-zero balance.

Page 20 of 39.
Department Of Computer Science & Engineering

Course Titleand Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title: 6: Lambda Expressions & Stream Planned Hours:6hrs
API:

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Explain functional interface. 4 L2 2.1.2
2. Explain Lambda expressions and stream interface. 4 L2 2.1.2
3. Identify the need of lambda expression/streams API to solve the 4 L3 2.1.2
given problem and implement using lambda expressions/streams
API.
4. Implement the generic functional interface for the given 4 L3 2.1.2
scenario.
5. Explain the reduction operations and give example. 4 L3 2.1.2

Lesson Schedule
Class No. - Portion covered per hour
1. Functional programming
2. Functional interface and Lambda expressions
3. Bulk operations on collections
4. Basics of Stream and stream operations
5. Reduction operations
6. Iterators and Streams

Review Questions
Sl. No. – Questions TLOs BL PI Code

1. Define lambda expression and streams API. Give one example 1 L2 2.1.2
for each.

2. 3 L3 2.1.2
// A sample functional interface
// (An interface with a single abstract method (SAM)
interface FunctionalInterface {
// An abstract function
void abstractFunction(int x);
}
Write two different lambda implementation for the given

Page 21 of 39.
Department Of Computer Science & Engineering

functional interface

3. Write the following methods that return a lambda 3 L3 2.1.2


expression performing a specified action:
A. PerformOperationisOdd(): The lambda expression must
return true if a number is odd or false if it is even.
B. PerformOperationisPrime(): The lambda expression must
return true if a number is prime or false if it is composite.
C. PerformOperationisPalindrome(): The lambda expression
must return true if a number is a palindrome or false if it is not.

4. Write a Java program to implement a lambda expression to find 3 L3 2.1.2


the sum of two integers.

5. Identify which is not applicable to Lambda expressions 2 L2 2.1.2


• A lambda expression is an anonymous function
• Lambda expressions can be created without belonging
to a class
• Lambdas were introduced in Java 8
• The -> operator separates a lambda's parameters from
the method body
• Lambdas can be used inside of forEach() method

5. Explain the stream interface. 2 L2 2.1.2

6. Implement the following reduction operations using streams 5 L3 2.1.2


API
a) min()
b) max()
c) sorted()

7. Create an ArrayList with the following members: 7,10,18, 5 L3 2.1.2


24,17,5. Write a java program to reduce the list values to
product of list values using streams API.

8. Predict the output of the following code: 5 L3 2.1.2


class StreamDemo {
public static void main(String[] args) {
// Create a list of Integer values.
ArrayList<Integer> numList = new ArrayList<>();
[Link](12); [Link](3); [Link](25);
[Link](8); [Link](19); [Link](6);

Page 22 of 39.
Department Of Computer Science & Engineering

Stream<Integer> numStream = [Link]();

Optional<Integer>someVal=
[Link](Integer::compare);
if ([Link]())
[Link]("value: " + [Link]());

Stream<Integer> numStream = [Link]().sorted();


[Link](n -> [Link](n + " "));}}

Page 23 of 39.
Department Of Computer Science & Engineering

UNIT III
Course Titleand Code: Object Oriented Programming(25ECSC204)
Chapter Number and Title: 7: Design Patterns Planned Hours:5hrs

Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Explain Design patterns and its types. 5 L2 3.2.2
2. Apply a suitable design pattern to solve a given problem. 5 L3 3.2.2
3. Analyze and compare creational, structural, and behavioral 5 L3 3.2.2
design patterns to justify their selection for a given software design
scenario.

Lesson Schedule
Class No. - Portion covered per hour
1. Creational design patterns
2. Creational design patterns
3. Structural design patterns.
4. Structural design patterns.
5. Behavioural design patterns.

Review Questions
TLO
Sl. No. – Questions BL PI Code
s

1. Explain Factory Method design pattern with a suitable example. 1 L2 3.2.2

3. What is a Design Pattern? Classify design patterns and explain 3.2.2


1 L2
any two creational patterns.

4. Explain the Strategy design pattern with a real-world scenario. 1 L2 3.2.2

5. Describe Singleton design pattern. Explain how it ensures a 3.2.2


1 L2
single instance in Java.

6. Consider an online shopping system where different payment 2 L3 3.2.2


methods (Credit Card, UPI, Net Banking) are supported. Apply a
suitable design pattern and write a Java program.

Page 24 of 39.
Department Of Computer Science & Engineering

L3 3.2.2

7. Design a notification system where users receive updates via SMS, Email, or App
2 L3 3.2.2 2
notification. Apply an appropriate design pattern and implement it.

8. Design a logging framework supporting File, Console, and


Database logging. Compare applicable design patterns and 3 L3 3.2.2
implement the best choice.

Course Title and Code: Object Oriented Programming(25ECSC204)


Chapter Number and Title: 8. Spring Boot Planned Hours: 5hrs
Learning Outcomes:-
At the end of the topic the student should be able to:
Topic Learning Outcomes COs BL CA Code
1. Explain the purpose, key features, and architecture of Spring 4 2 2.1.2
Boot.
2. Implement RESTful web services using Spring Boot 4 3 2.1.2
annotations, handle HTTP requests.
3. Use Spring Data JPA, and perform CRUD operations. 4 3 2.1.2

Lesson Schedule
Class No. - Portion covered per hour
1. Overview, key features, architecture, setting-up a Spring Boot
2. RESTful API
3. Spring data JPA
4. CRUD Operations.
5. Integration of RESTful APIs with Spring Data JPA and CRUD operations (case
study / hands-on example)

Review Questions

[Link]. - Questions TLOs BL PI Code


1. Explain the overview and key features of Spring Boot. 1 L2 2.1.2
2. Describe the architecture of a Spring Boot application with its
1 L2 2.1.2
main components.
3. Explain the steps involved in setting up a Spring Boot
1 L2 2.1.2
application using Spring Initializr.
4. Explain the role of [Link] or [Link] in 1 L2 2.1.2

Page 25 of 39.
Department Of Computer Science & Engineering

Spring Boot applications.


5. A college management system needs to provide student details
through a web service. Explain how you would implement a L3 2.1.2
2
RESTful API using Spring Boot annotations to handle HTTP
requests.
6. An online bookstore application requires support for adding,
updating, viewing, and deleting book details. Demonstrate how L3 2.1.2
2
GET, POST, PUT, and DELETE methods are handled in a Spring
Boot REST API.
7. A library management system needs to store and retrieve book
information from a database. Explain how Spring Data JPA helps 3 L3 2.1.2
in managing data persistence in this scenario.
8. In an employee management system, employee records must be
created, updated, retrieved, and deleted. Illustrate how CRUD 3 L3 2.1.2
operations are performed using Spring Data JPA in Spring Boot.
9. A hospital management system uses a database to manage
patient records. With a suitable example, explain the use of 3 L3 2.1.2
repository interfaces in Spring Data JPA.
10. Design a simple product management application that exposes
RESTful services and performs CRUD operations using Spring 3 L3 2.1.2
Boot and Spring Data JPA.

Page 26 of 39.
Department Of Computer Science & Engineering

Page 27 of 39.
Department Of Computer Science & Engineering

Model Question Paper for Minor Examination –I (ISA)


Course Code : 25ECSC204 Course Title: Object Oriented Programming
Duration :75 Mins
Max. Marks: 40
Note:
i. Answer any two full questions
ii. All questions carry equal marks
[Link] Questions Marks CO BL PO PI Code
1.a List features of object oriented programming and 04 1 L2 1 1.3.3
explain.
1.b Given a code snippet, write the output and write 06 1 L3 1 1.3.3
your observations.
public class MyClass {
long var;
public void MyClass(long param) { var = param; }
public static void main(String[] args) {
MyClass a, b;
a = new MyClass();
b = new MyClass(5);
}
}
1.c Consider a class hierarchy Employee(empId, 10 2 L3 2 2.1.2
name, salary, bonus) Manager(numberOfShares)
and Salesman(numberOfSales). Assume initial
bonus amount is zero for all employees. Define a
method to pay bonus and consider the
corresponding attribute of employee while paying
bonus. Identify the need of abstract class in this
scenario. Write a java program to implement the
class hierarchy and show that abstract class
enforce the polymorphism.
2.a Explain different type of inheritance to implement 04 2 L2 1 2.1.2
a reusable code in java.
2.b Explain the different types of has-relationships 06 5 L3 3 3.2.2
between objects and consider the following objects
of banking domain

• BankAccount(accNo, accBal, accType )


• AadharCard (aadharNo, name, address)
• PanCard(panNo, name)

Page 28 of 39.
Department Of Computer Science & Engineering

The government India announces for its citizens to


link the objects correspondingly for smooth
transactions of their bank accounts. Identify the
relationships between he given objects and draw
the class diagram accordingly.

2c Consider a Flight which goes to intermediate 10 2 L3 1 1.3.3


destination (upto 2 stops in between the route)
before reaching final destination. Each flight can
carry fixed number of passengers and particular
weights of goods. We can get display list of all the
passengers or passengers to particular destination.
Write a Java program to create a flight and add
passengers to it. Finally print the details of
passengers.

3.a Explain static members of a class. 04 1 L2 1 1.3.3


3.b Given a code snippet write the correct output: 06 2 L3 2 2.1.2

public class TestPoly {


public static void main(String [] args ){
Parent p = new Child();
}
}
class Parent {
public Parent() {
super();
[Link]("instantiate a parent");
}
}
class Child extends Parent {
public Child() {
[Link]("instantiate a child");
super();
}
}
3.c Consider Network service provider like Reliance 10 2 L3 2 2.1.2
who provide services like Broadband and DTH
connections.

• Create a class BroadBand with


memberscustomerName, id, planAmount.
• Create a class DTH with member
customerMobileNumber, string

Page 29 of 39.
Department Of Computer Science & Engineering

channelList[ ], balance.
• Create class NetworkProvider with
members BroadBandbbArray[ ], DTH
dArray[ ], bbCount, dthCount. Include
methods like
registerNewConnection(BroadBand b),
registerNewConnection( DTH d),
displayConnetions(inttypeOfConnections)

Write a main program to create a Network service


provider with few connections of broadband and
DTH. Then register new connections and display
the list.

Page 30 of 39.
Department Of Computer Science & Engineering

Model Question Paper for Minor Examination –II (ISA-II )


Course Code: 25ECSC204 Course Title: Course Title: Object Oriented
Programming
Duration 75 Mins
Max. Marks 40
Note:
i. Answer any two full questions
ii. All questions carry equal marks

[Link] Questions Marks CO BL PO PI Code


1.a Explain the exception handling mechanism of java. 04 3 L2 14 2.1.2

1.b Write the output of the following code snippet and 06 3 L3 14 2.1.2
comment on the output.
interface Movable {
void move();
}
interface Stoppable {
void stop();
}
class Robot implements Movable, Stoppable {
public void move() {
[Link]("Robot is moving");
}

public void stop() {


[Link]("Robot has stopped");
}
}
public class MultipleInterfacesExample {
public static void main(String[] args) {
Movable robot = new Robot();
[Link]();
[Link]();
}
}

1c Differentiate List and ArrayList and write a java 10 3 L3 14 2.1.2


program to explain how these two are related and
implemented separately.

Page 31 of 39.
Department Of Computer Science & Engineering

2.a Write the output of the following code snippet and 04 3 L3 14 2.1.2
comment on your output.

public class Test


{
public static void main(String[] args)
{
try
{
[Link]("1");
int data = 5 / 0;
}
catch(ArithmeticException e)
{
[Link]("2");
[Link](0);
}
finally
{
[Link]("3");
}
[Link]("4");
}
}
2.b What is lambda expression and provide syntax of 06 4 L2 1 2.1.2
lambda expression with examples.
2.c Consider the ArrayList as the source of stream to be 10 3 L3 14 2.1.2
created and demonstrate the following:

i. Find the minimum and maximum value


ii. Display only the odd values from the
ArrayList

3.a List 4 method of stream interface and explain how 4 4 L2 1 2.1.2


they are used in java programs.

3.b Write the output of the following code snippet and 06 3 L3 14 2.1.2
write your comment on the output.
class StreamDemo2 {
public static void main(String[] args) {
// Create a list of Integer values.
ArrayList<Integer>myList = new ArrayList<>( );
[Link](7);
[Link](18);

Page 32 of 39.
Department Of Computer Science & Engineering

[Link](10);
[Link](24);
[Link](17);
[Link](5);
// Two ways to obtain the integer product of the
elements
// in myList by use of reduce().
Optional<Integer>productObj =
[Link]().reduce((a,b) -> a*b);
if([Link]())
[Link]("Product as Optional: " +
[Link]());
int product = [Link]().reduce(1, (a,b) -> a*b);
[Link]("Product as int: " + product);
}
}

3.c The event coordinator of workshop “Image 10 3 L3 14 2.1.2


processing using PYTHON” of plideas2024 (Annual
event) plans to develop a EventRegistrationApp{
eventTitle, date, time, registrationFee} for
registration of participants to workshop. The
registration app accepts valid entries and then
registration is successful. Assist him to identify one
invalid entry and consider it as exception condition
and write solution using Java Make some
registrations successful and print successful
registrations. Apply the user defined exception
concept wherever applicable.

Page 33 of 39.
Department Of Computer Science & Engineering

Model Question Paper for End Semester Assessment (ESA)


Course Code: 25ECSC204 Course Title: Object Oriented Programming
Duration 3 Hrs
Max. Marks 100
Note:
i. Answer any five questions selecting 2 questions from UNIT-1 and
UNIT-2 and 1 question from UNIT-3
ii. Each question carries equal marks.
UNIT I
[Link] Questions Marks CO BL PO PI
Code
1a. Explain the 4 features of Java. 04 1 L2 1 1.3.1
1.b public class MyClass { 06 2 L3 2 2.2.4
long var;
public void MyClass(long param) { var =
param; } // (1)
public static void main(String[] args) {
MyClass a, b;
a = new MyClass(); // (2)
b = new MyClass(5); // (3)
}
}
1c 10 2 L3 2 2.2.4
Consider a Flight which goes to intermediate
destination (upto 2 stops in between the route)
before reaching final destination. Each flight can
carry fixed number of passengers and particular
weights of goods. We can get display list of all
the passengers or passengers to particular
destination. Write a Java program to create a
flight and add passengers to it. Finally print the
details of passengers.
2.a Explain hierarchical inheritance with general 04 1 L2 1 2.2.4
syntax to implement in Java.
2.b Explain the different types of has-relationships 06 2 L3 2 2.2.4
between objects and consider the following
objects of banking domain

• BankAccount(accNo, accBal, accType )


• AadharCard (aadharNo, name, address)
• PanCard(panNo, name)
The government India announces for its citizens

Page 34 of 39.
Department Of Computer Science & Engineering

to link the objects correspondingly for smooth


transactions of their bank accounts. Identify the
relationships between he given objects and
create the classes accordingly.

2c Create a class hierarchy with following details: 10 2 L3 2 2.2.4


Car with members color, name, noOfSeats,
maxSpeed, speed, accelerate(), break().Then
create two sub-classes Ferrari, [Link] a
test program to create a object of Ferrari and
BMW. Race both the cars.
3.a What is the difference between overriding and 04 1 L2 1 1.3.1
Overloading? Give examples.
3.b Given a code snippet write your observation on 06 2 L3 2 2.2.4
output.
public class TestPoly {
public static void main(String [] args ){
Parent p = new Child();
}}
class Parent {
public Parent() {
super();
[Link]("instantiate a parent");
}}
class Child extends Parent {
public Child() {
[Link]("instantiate a child");
super();
}}
3.c Consider a Multiplex that has multiple screens. 10 2 L3 2 2.2.4
Each screen displays a particular movie. Write a
Java program to perform following operations.
I. To create Multiplex, Screens and
movies.
II. To add, delete and display screens.
III. To change movies displayed by a screen.

Page 35 of 39.
Department Of Computer Science & Engineering

UNIT II
[Link] Questions Marks CO BL PO PI
Code
4.a Explain the class hierarchy of exception 04 3 L2 14 14.1.1
handling in java.
4.b Write the output of the following code snippet 06 3 L3 14 14.1.1
and comment on the output.
interface Movable {
void move();
}
interface Stoppable {
void stop();
}
class Robot implements Movable, Stoppable {
public void move() {
[Link]("Robot is moving");
}

public void stop() {


[Link]("Robot has stopped");
}
}
public class MultipleInterfacesExample {
public static void main(String[] args) {
Movable robot = new Robot();
[Link]();
[Link]();
}
}
4.c Differentiate List and ArrayList and write a 10 3 L3 14 14.1.1
java program to explain how these two are
related and implemented separately.

Page 36 of 39.
Department Of Computer Science & Engineering

5.a Write the output of the following code snippet 04 3 L3 14 14.1.1


and comment.

import [Link];
import [Link];
class Test {
public static void main(String[] args)
{
try
{
[Link]("1");
int value = 10 / 0;
throw new IOException();
}
catch(EOFException e)
{
[Link]("2");
}
catch(ArithmeticException e)
{
[Link]("3");
}
catch(NullPointerException e)
{
[Link]("4");
}
catch(IOException e)
{
[Link]("5");
}
catch(Exception e)
{
[Link]("6");
}
}
}
5.b What is lambda expression and provide syntax 06 4 L2 1 1.3.1
of lambda expression with examples.
5.c Consider a class hierarchy Employee(empId, 10 3 L3 14 14.1.1
name, salary, bonus)
Manager(numberOfShares) and
Salesman(numberOfSales). Assume initial

Page 37 of 39.
Department Of Computer Science & Engineering

bonus amount is zero for all employees. Define


a method to pay bonus and consider attribute of
respective classes while paying bonus. Write a
java program to implement run time
polymorphism.
6.a List 4 method of stream interface and explain 4 4 L2 1 1.3.1
how they are used in java programs.
6.b Write the output of the following code snippet 06 3 L3 14 14.1.1
and write your comment on the output.
class StreamDemo2 {
public static void main(String[] args) {
// Create a list of Integer values.
ArrayList<Integer>myList = new ArrayList<>(
);
[Link](7);
[Link](18);
[Link](10);
[Link](24);
[Link](17);
[Link](5);
// Two ways to obtain the integer product of the
elements
// in myList by use of reduce().
Optional<Integer>productObj =
[Link]().reduce((a,b) -> a*b);
if([Link]())
[Link]("Product as Optional: " +
[Link]());
int product = [Link]().reduce(1, (a,b) ->
a*b);
[Link]("Product as int: " +
product);
}
}
6.c Each person owns an account. Person performs 10 3 L3 14 14.1.1
debit and credit operation with the account he
owns. Also some time he/she can transfer
money to friends account. Write program to
create few person along with their account,
then perform debit, credit and transfer
operation. Handle exception while transferring
amount which should below Rs50000.

Page 38 of 39.
Department Of Computer Science & Engineering

UNIT - III
[Link]. Questions Marks CO BL PO PI
Code

7a Explain how to expose RESTful APIs in Spring 10 4 L2 1 1.3.1


Boot applications?
7b Consider a Library Management System where 10 4 L3 1 1.3.1
you have an entity Book with fields like id, title,
author, price, and availabilityStatus. The system
allows admins to update the details of a book, such
as changing the price or marking a book as
unavailable once it’s checked out.

Explain how to update the price and


availabilityStatus of a Book entity using Spring
Data JPA. Provide an example of how this can be
done using Spring Data JPA's CrudRepository or
JpaRepository.
8a What is design Pattern? List types of design 10 5 L2 2 2.2.4
pattern and explain most commonly used pattern.
8b Consider an online food delivery platform like 10 5 L3 2 2.2.4
Zomato or UberEats. The platform maintains a list
of restaurants, their menus, customer orders, and
delivery details. Whenever a customer places an
order, the system checks if the restaurant is open,
if the selected items are available on the menu, and
if the customer’s payment is successful. It also
checks the delivery location and assigns the order
to an available delivery driver.

Apply suitable Design Pattern(s) to structure the


program for this scenario.

Page 39 of 39.

You might also like