This document is a B.Tech (Semester IV) Theory Examination Question Paper for the subject BCS403 – Object Oriented Programming with Java, conducted in the academic year 2023–2024. It is a 70-mark, 3-hour examination designed to assess students’ understanding of Java fundamentals, OOP concepts, exception handling, multithreading, collections, functional programming, and foundational Spring Framework concepts.
The paper is divided into three sections—A, B, and C—each evaluating different levels of Java programming knowledge.
SECTION A – Short Answer Questions (14 Marks)
Seven questions (2 marks each) that test basic and essential Java concepts:
JVM and bytecode in Java architecture
Definition of classes and objects with examples
Interfaces in Java
Keywords used in exception handling (try, catch, throw, throws, finally)
Thread life-cycle states
Writing a Java program to create and iterate an ArrayList<String>
Concept of Sealed Classes in Java with example
These questions check fundamental clarity of OOP, Java syntax, and basic coding ability.
SECTION B – Intermediate / Application-Oriented Questions (21 Marks)
Students must attempt any three of the five 7-mark questions. Topics include:
Abstraction and abstract classes with examples
Methods of creating threads in Java (Thread class, Runnable interface)
Functional interfaces and lambda expressions
Diagrammatic explanation of Java Collections Framework, including List, Set, Queue
Difference between Dependency Injection (DI) and Inversion of Control (IoC) in Spring
This section tests deeper OOP design understanding and Java application development patterns.
SECTION C – Advanced / Coding & Conceptual Problems (28 Marks)
Each main question contains two options, and students must attempt one from each.
3. OOP Concepts & Constructors
Explanation of polymorphism (compile-time & runtime) with overriding example using Shape and Rectangle
Definition & use of constructors; writing a Student class and creating objects
4. Exception Handling & Thread Synchronization
Difference between checked vs unchecked exceptions, with program on ArithmeticException
Differences between:
Character streams vs Byte streams
wait() vs notify()
5. Java Stream API / Switch Expression
Intermediate & terminal stream operations; program to print sum of even numbers from ArrayList
Comparison of traditional switch-case vs modern switch expression with example
6. Collections – LinkedList / HashMap
LinkedList methods with example
HashMap operations with example
7. Spring Framework Topics
Spring container and bean life cycle
Spring Boot framework, benefits, and RESTful API concepts
This section evaluates coding skills, deeper design principles, Java 8+ features, and introductory Spring framework knowledge.
Overall Purpose of the Document
This exam paper is structured to evaluate a student’s:
Understanding of Object-Oriented Programming concepts in Java
Ability to write and analyze Java code
Knowledge of exception handling, multithreading, collections, streams
Familiarity with modern Java features like lambda expressions and sealed classes
Introductory understanding of Spring & Spring Boot frameworks
The paper combines theory, examples, program writing, and conceptual explanations to assess practical and academic Java proficiency.