Object-Oriented Thinking & Java Basics
OOP Paradigm, Abstraction, Java Basics, Control Statements, Classes, Objects & Methods
2-Mark Questions
10- Define the object-oriented programming paradigm.
- State Java buzzwords and core design features.
- List primitive data types available in Java.
- Identify the scope and lifetime of local variables.
- Explain abstraction mechanisms in OOP.
- Summarize the role and usage of the `this` keyword.
- Distinguish between method overloading and constructor overloading.
- Describe garbage collection in Java.
- Demonstrate array declaration and initialization in Java.
- Apply type conversion and casting between primitive types.
5-Mark Questions
8- Explain the need for the OOP paradigm and how it helps cope with software complexity.
- Analyze the history and foundational philosophy of Java.
- Examine parameter passing mechanisms (pass-by-value) in Java methods with examples.
- Explain constructors, method overloading, and object instantiation.
- Demonstrate nested and inner classes with a suitable Java program.
- Analyze recursion with a recursive method example (e.g., factorial or Fibonacci).
- Explain access control modifiers and their visibility rules across classes.
- Explore the `String` class constructors, immutability, and basic methods.
10-Mark Questions
3- Evaluate the advantages of object-oriented thinking over procedural programming models in enterprise software development.
- Design a complete Java program incorporating classes, parameterized constructors, method overloading, inner classes, and array manipulation.
- Formulate an advanced object-oriented model applying abstraction and encapsulation for a real-world entity management system.
Inheritance, Packages and Interfaces
Hierarchical Abstractions, Polymorphism, Packages, CLASSPATH & Interfaces
2-Mark Questions
10- Define inheritance in Java.
- State the various forms of inheritance (specialization, specification, extension).
- List the benefits and costs of inheritance.
- Identify the role of the `super` keyword.
- Explain abstract classes and their purpose.
- Summarize the purpose of CLASSPATH environment configuration.
- Distinguish between classes and interfaces.
- Describe method overriding in polymorphism.
- Demonstrate how to create and import a user-defined package.
- Apply variables and constant declarations within an interface.
5-Mark Questions
8- Explain hierarchical abstractions, base class objects, and substitutability.
- Analyze member access rules across packages, subclasses, and non-subclasses.
- Examine the use of the `final` keyword with classes, methods, and variables.
- Explain dynamic method dispatch and runtime polymorphism in Java.
- Demonstrate package creation, compilation, and folder directory structuring.
- Analyze interface definition, implementation, and multiple inheritance support.
- Explain extending interfaces and interface inheritance hierarchies.
- Compare abstract classes with interfaces in object-oriented design.
10-Mark Questions
3- Evaluate the costs versus benefits of deep inheritance hierarchies in complex software architectures.
- Design a robust package hierarchy utilizing abstract classes, interfaces, and polymorphism to implement a graphical shape management system.
- Formulate an extensible object-oriented framework demonstrating interface extension and dynamic method dispatch.
Exception Handling and Multithreading
Exception Hierarchy, Try-Catch-Finally, Multitasking, Thread Lifecycle & Synchronization
2-Mark Questions
10- Define an exception in Java.
- State the exception handling hierarchy (`Throwable`, `Exception`, `Error`).
- List the keywords used in exception handling (`try`, `catch`, `throw`, `throws`, `finally`).
- Identify the difference between multithreading and multitasking.
- Explain thread life cycle states.
- Summarize thread priorities in Java.
- Distinguish between termination and resumptive exception models.
- Describe daemon threads and their utility.
- Demonstrate custom user-defined exception creation.
- Apply thread synchronization using synchronized methods.
5-Mark Questions
8- Explain the benefits of exception handling and try-catch-finally block execution flows.
- Analyze custom exception subclasses and their exception propagation rules.
- Examine thread creation methods (extending `Thread` class vs implementing `Runnable` interface).
- Explain thread synchronization mechanisms to prevent race conditions and data inconsistency.
- Demonstrate inter-thread communication using `wait()`, `notify()`, and `notifyAll()`.
- Analyze thread groups and thread lifecycle management.
- Explain the role of daemon threads in background service execution.
- Compare multithreading synchronization with traditional multitasking.
10-Mark Questions
3- Evaluate the trade-offs between checked and unchecked exceptions in enterprise application design.
- Design a robust multithreaded producer-consumer simulation using thread synchronization and inter-thread communication.
- Formulate an advanced fault-tolerant exception handling and multithreaded task scheduler framework.
Exploring Packages, I/O & Event Handling
String Class, Object Class, java.util, java.io, Delegation Event Model & Layout Managers
2-Mark Questions
10- Define the `String` class and its string immutability.
- State the purpose of the `java.util` package utilities.
- List key classes in the `java.io` package for byte and character streams.
- Identify the components of the delegation event model (Source, Event, Listener).
- Explain layout managers in GUI programming.
- Summarize the role of adapter classes in event handling.
- Distinguish between mouse events and keyboard events.
- Describe flow layout versus border layout.
- Demonstrate file reading and writing using file streams.
- Apply grid bag layout constraints for complex forms.
5-Mark Questions
8- Explain utility classes in `java.util` (such as collections, scanners, or vectors).
- Analyze file I/O operations using byte streams and character stream classes.
- Examine the delegation event model and event listener interfaces.
- Explain how to handle mouse and keyboard events in GUI applications.
- Demonstrate adapter classes to simplify event handling code.
- Analyze layout manager types (Border, Grid, Flow, Card, and GridBag).
- Explain string manipulation, searching, and comparison methods.
- Compare text file processing with binary file streams in `java.io`.
10-Mark Questions
3- Evaluate the efficiency and design flexibility of different layout managers in complex graphical user interfaces.
- Design an interactive GUI application featuring custom event handling, mouse/keyboard listeners, and file I/O data persistence.
- Formulate a comprehensive file management and data utility tool utilizing `java.util` and `java.io` packages.
Swing GUI Components & Menus
AWT Limitations, MVC Architecture, Swing Containers, Components, Trees, Tables & Menus
2-Mark Questions
10- Define Java Swing and its advantages over AWT.
- State the limitations of AWT components.
- List common Swing top-level containers (`JFrame`, `JComponent`).
- Identify MVC architecture principles in Swing components.
- Explain text components (`JTextField`, `JLabel`).
- Summarize selection components (`JCheckBox`, `JRadioButton`).
- Distinguish between `JList` and `JComboBox`.
- Describe tabbed panes and scroll panes.
- Demonstrate menu creation using `JMenuBar` and `JMenuItem`.
- Apply popup menus in Swing desktop applications.
5-Mark Questions
8- Explain the Model-View-Controller (MVC) architecture underlying Swing components.
- Analyze the limitations of AWT and why Swing was introduced as lightweight components.
- Examine common Swing containers and components (`JFrame`, `JButton`, `JLabel`, `JTextField`).
- Explain selection controls (`JCheckBox`, `JRadioButton`, `JComboBox`, `JList`).
- Demonstrate advanced container components like Tabbed Panes and Scroll Panes.
- Analyze hierarchical data representation and tabular displays using `JTree` and `JTable`.
- Explain menu systems (`JMenuBar`, `JMenu`, `JMenuItem`, separators, and checkboxes).
- Compare standard menu bars with context-sensitive popup menus.
10-Mark Questions
3- Evaluate the scalability and user experience of Swing GUI architectures in enterprise desktop application development.
- Design a complete Swing desktop application featuring multi-tabbed panes, JTree file browsers, JTables, and dynamic popup menus.
- Formulate an enterprise-grade GUI dashboard using advanced Swing components and event listeners.
Exam Preparation Tip
These questions are structured across all levels of Bloom's Taxonomy (Remember, Understand, Apply, Analyze, Evaluate, Create). Begin with 2-mark foundational definitions, progress to 5-mark conceptual analysis and coding applications, and master 10-mark architectural design problems.