0% found this document useful (0 votes)
26 views8 pages

Java Object-Oriented Programming Syllabus

Model paper of java

Uploaded by

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

Java Object-Oriented Programming Syllabus

Model paper of java

Uploaded by

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

VASIREDDY VENKATADRI INSTITUTE OF

TECHNOLOGYNAMBUR-522508.

YEAR: II B. Tech SEMESTER: I


COURSE NAME: OBJECT ORIENTED PROGRAMMING THROUGH JAVA
COURSE CODE:
BRANCH: CSE, IT and Allied Branches
PREREQUISITE: Knowledge of C programming language
COURSE OBJECTIVE:
 Identify Java language components and how they work together in
applications
 Learn the fundamentals of object-oriented programming in Java, including
defining classes, invoking methods, and using class libraries.
 Learn how to extend Java classes with inheritance and dynamic binding
and how to use exception handling in Java applications
 Understand how to design applications with threads in Java
 Understand how to use Java APIs for program development

COURSE OUTCOMES: Students will be able to:
Cognitive
Levels as
S.N Weightag
OUTCOME per
o e (%)
Bloom’s
Taxonomy
Explore the fundamentals of Java concepts L1, L2, L3,
CO1 20
L4
List Object oriented concepts through Java L1, L2, L3,
CO2 20
L4
Implement Inheritance and Java libraries L1, L2, L3,
CO3 20
L4
Demonstrate Java Exceptions, threads, and I/O Streams L1, L2, L3,
CO4 20
L4
Explore Java 8 features and Java FX library L1, L2, L3,
CO5 20
L4

WEIGHTAGE OF BLOOM’S LEGENDS & PERCENTAGE OF QUESTIONS IN


EXAMINATIONS:
L1 (Remembering) = 30- 40%, L2 (Understanding) = 30 - 40%,
L3 (Applying) = 10-20 %, L4 (Analysing) = 10 - 20%,
Easy (%) = 15%-20%, Average (%)= 60% - 70%, Difficult (%)= 15% - 20%
TOTAL = L1 + L2 + L3 + L4 = 100% (on an average about 2 minutes per mark)
Note: This specification weightage in above shall be treated as a general
guideline for students, teachers, and paper setters. The actual distribution of
marks in the question paper may vary slightly.
DETAILED SYLLABUS:
Object Oriented Programming: Basic concepts, Principles,
Program Structure in Java: Introduction, Writing Simple Java Programs, Elements
or Tokens in Java Programs, Java Statements, Command Line Arguments, User
Input to Programs, Escape Sequences Comments, Programming Style.
Data Types, Variables, and Operators : Introduction, Data Types in Java,
Declaration of Variables, Data Types, Type Casting, Scope of Variable Identifier,
Literal Constants, Symbolic Constants, Formatted Output with printf() Method,
Static Variables and Methods, Attribute Final, Introduction to Operators,
Precedence and Associativity of Operators, Assignment Operator ( = ), Basic
Arithmetic Operators, Increment (++) and Decrement (- -) Operators, Ternary
Operator, Relational Operators, Boolean Logical Operators, Bitwise Logical
Operators.
Control Statements: Introduction, if Expression, Nested if Expressions, if–else
Expressions, Switch Statement, Iteration Statements, while Expression, do–while
Loop, for Loop, Nested for Loop, For–Each for Loop, Break Statement, Continue
Statement.
UNIT II
Classes and Objects: Introduction, Class Declaration and Modifiers, Class
Members, Declaration of Class Objects, Assigning One Object to Another, Access
Control for Class Members, Accessing Private Members of Class, Constructor
Methods for Class, Overloaded Constructor Methods, Nested Classes, Passing
Arguments by Value and by Reference, Keyword this.
Methods: Introduction, Defining Methods, Overloaded Methods, Overloaded
Constructor Methods, Class Objects as Parameters in Methods, Access Control,
Recursive Methods, Nesting of Methods, Static keyword.
Arrays: Introduction, Declaration and Initialization of Arrays, Storage of Array in
Computer Memory, Accessing Elements of Arrays, Operations on Array
Elements, Assigning Array to Another Array, Dynamic Change of Array Size,
Sorting of Arrays, Search for Values in Arrays, Class Arrays, Two-dimensional
Arrays, Arrays of Varying Lengths, Three-dimensional Arrays, Arrays as Vectors.
String Handling in Java: Introduction, Interface Char Sequence, Class String,
Methods for Extracting Characters from Strings, Comparison, Modifying,
Searching; Class String Buffer.
UNIT III
Inheritance: Introduction, Process of Inheritance, Types of Inheritances,
Universal Super Class-Object Class, Inhibiting Inheritance of Class Using Final,
Access Control and Inheritance, Multilevel Inheritance, Application of Keyword
Super, Constructor Method and Inheritance, Method Overriding, Dynamic
Method Dispatch, Abstract Classes, Interfaces and Inheritance, Final Class,
Methods and attributes.
Interfaces: Introduction, Declaration of Interface, Implementation of Interface,
Multiple Interfaces, Nested Interfaces, Inheritance of Interfaces, Default Methods
in Interfaces, Static Methods in Interface, Functional Interfaces, Annotations.
Packages and Java Library: Introduction, Defining Package, Importing Packages
and Classes into Programs, Path and Class Path, Access Control, Packages in
Java SE, [Link] Package and its Classes, Class Object, Enumeration, class
Math, Wrapper Classes, Auto-boxing and Auto-unboxing, Java util Classes and
Interfaces, Formatter Class, Random Class, Time Package, Class Instant
([Link]), Formatting for Date/Time in Java, Temporal Adjusters Class,
Temporal Adjusters Class.

UNIT IV
Exception Handling: Introduction, Hierarchy of Standard Exception Classes,
Keywords throws and throw, try, catch, and finally Blocks, Multiple Catch
Clauses, Class Throwable, Unchecked Exceptions, Checked Exceptions.
Java I/O and File: Java I/O API, standard I/O streams, types, Byte streams,
Character streams, Scanner class, Files in Java, Serialization (Text Book 2)
Multithreaded Programming: Introduction, Need for Multiple Threads
Multithreaded Programming for Multi-core Processor, Thread Class, Main Thread-
Creation of New Threads, Thread States, Thread Priority-Synchronization,
Deadlock and Race Situations, Inter-thread Communication - Suspending,
Resuming, and Stopping of Threads.
UNIT V
Java 8 features: Lambda Expressions, functional Interfaces, Default Methods,
Date and Time API.
Java FX GUI: Java FX Scene Builder, Java FX App Window Structure, displaying
text and image, event handling, laying out nodes in scene graph, mouse events
(Text Book 3)
Text Books:
1) The complete Reference Java, 11th edition, Herbert Schildt, TMH
2) JAVA one step ahead, Anitha Seth, [Link], Oxford.
3) Joy with JAVA, Fundamentals of Object-Oriented Programming, Debasis
Samanta, Monalisa Sarma, Cambridge, 2023.
4) JAVA 9 for Programmers, Paul Deitel, Harvey Deitel, 4th Edition, Pearson.
References Books:
1) JAVA 9 for Programmers, Paul Deitel, Harvey Deitel, 4th Edition, Pearson.
2) Introduction to Java programming, 7th Edition, Y Daniel Liang, Pearson
Online Resources:
1) [Link]
2)[Link]
lex_auth_012880464547618816347_shared/overview

MICRO-SYLLABUS:
Unit Module Micro content
Java program structure, features and history
Introduction to Java
Java Command Line Arguments
Datatypes
1 Operators
Basic concepts of Java Control statements – conditional statements
Looping statements
Break and continue
Unit Module Micro content
Objects
Classes – Constructors, Encapsulation
OOPS Concepts part-I Java methods
Method overloading
Static, this, final and access modifiers
2
Introduction arrays in Java, 1-Dimensional arrays
2-D arrays – declaring, reading & printing
Arrays & Strings Java Strings introduction- String methods
StringBuffer methods
Strings & arrays examples
Unit Module Micro content
Inheritance – types of inheritance, examples
Method overriding – Run time polymorphism
OOPS Concepts part-II Abstraction through Abstract classes
Abstraction through interfaces
Multiple inheritance with classes and interface
3 Introduction to packages
Writing user-defined packages
Exploring Packages Access control
Exploring built-in packages [Link]
[Link]
Unit Module Micro content
Exception, Exception handling keywords
Types of Exceptions
Handling checked and unchecked exceptions
Exception Handling & IO
More about try, catch, throw, throws and finally
keywords
Working with User-defined exceptions
4
Thread, Multiprocessing vs Multithreading
Java thread creation – Thread class, Runnable interface
Exploring isAlive, join, setPriority, and getPriority
Multithreading
Exploring setName,getName,isDaemon and setDaemon
Thread synchronization – Mutual Exclusive
Thread synchronization – Inter Thread Communication
Unit Module Micro content
5 Lambda Expressions
Functional interfaces
Java8 features
Static and default methods in interfaces
Date & Time API
JavaFX GUI Introduction to JavaFX, configuring javafx
Working with javafx UI Controls
Working with javafx various shapes
Rapid Application Development with SceneBuilder

*****

R23
Code No:
II B. TECH I SEMESTER REGULAR EXAMINATIONS, DEC-2024
OBJECT ORIENTED PROGRAMMING THROUGH JAVA
(COMMON TO CSE, IT & ALLIED BRANCHES)
Time: 3 Hours Max. Marks:
70
_________________________________________________________________________________
Note: 1. The question paper consists of two parts (Part-A and Part-B)
2. All the questions in Part-A are Compulsory
3. Answer ONE Question from Each Unit in Part-B
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PART – A (20 Marks)
CO BL
1. a [2M
Define JDK, JRE and JVM. 1 L1
) ]
b [2M
Explain for-each in Java. 1 L1
) ]
c) [2M
Write about encapsulation. 2 L1
]
d [2M
List Java Access specifiers. 2 L1
) ]
e Method parameter passing techniques of Java. [2M
3 L1
) ]
Write about Java Multiple inheritance. [2M
f) 3 L1
]
g Checked vs Unchecked exceptions of Java. [2M
4 L1
) ]
h Thread Life Cycle. [2M
4 L1
) ]
i) Functional interface in Java. [2M
5 L1
]
j) JavaFx application structure. [2M
5 L1
]

PART – B (50 Marks)


UNIT-I CO BL
2. a Write and explain the Java program structure with
) a suitable example and, also discuss [5M] 1 L2
the compilation and execution steps
b Explain Java arithmetic and bitwise operators with
examples. [5M] 1 L2
)
(OR)
3. a Write a Java program to perform a binary search.
[5M] 1 L3
) Use command line arguments to accept input.
b List and explain Java primitive data types and, also
) write a program to display default values of all [5M] 1 L2
primitive data types.
UNIT-II
4. a Explain object-oriented programming concepts in
[5M] 2 L1
) detail.
b Write a Java application that proves compile time
[5M] 2 L3
) polymorphism
(OR)
5. a Discuss types of variables in Java with suitable
[5M] 2 L2
) examples (hint: local, instance and class).
b Define constructor. Discuss types of constructors in
[5M] 2 L2
) Java with examples.
UNIT-III
6. a What is an inheritance? What are the various forms
) of inheritance? Write a Java program to [5M] 3 L2
demonstrate multilevel inheritance.
b Discuss the following Java keywords
[5M] 3 L1
) i)this ii)final iii)super
(OR)
7. a Define an interface. Discuss how abstraction can be
achieved in java through interfaces [5M] 3 L2
)
b Define the package and its advantages. Discuss any
2 built-in packages [5M] 3 L1
)
UNIT-IV
8. a Discuss keyword try, catch, throw, throws, and [5M] 4 L2
) finally with a suitable example
b Write a Java program to demonstrate object [5M]
4 L4
) serialization
(OR)
9. a Define a thread. Explain how threads can be
[5M] 4 L2
) created using the Runnable interface
b Develop a Java program for Inter Thread
[5M] 4 L4
) Communication.
UNIT-V
10 a Explain Lambda expression. Write how Lambda [5M]
5 L2
. ) expressions are used in functional interfaces
b Write about Java default methods and static [5M]
5 L2
) methods in interfaces
(OR)
11 a Write a JavaFX program to work with various UI
[5M] 5 L3
. ) controls.
b Explain event handling in JavaFX. Write a JavaFX
[5M] 5 L3
) program to handle key events

*****

THE ABOVE MODEL PAPER ATTAINMENTS OF BLOOM’S TAXONOMY AS FOLLOWS

L1: 35 Marks

L2: 55 Marks

L3: 20 Marks

L4: 10 Marks

SIGNATURES OF
COURSE COORDINATER MODULE COORDINATER HOD

Common questions

Powered by AI

Java's multithreading allows concurrent execution of two or more threads, enabling better distribution of computational tasks across multiple cores of a processor, thereby improving application performance. By utilizing multithreading, Java applications can perform multiple operations simultaneously, such as executing a computation-intensive task in one thread while waiting for user input in another. This parallel execution fully utilizes the capabilities of multi-core processors, reduces execution time, and enhances responsiveness to the user .

The Java I/O API provides a framework for reading and writing data from various sources like files, network connections, and memory. It facilitates data handling through a rich set of classes that allow for efficient input/output operations. Byte streams, part of the java.io package, are used for reading and writing binary data with classes like FileInputStream and FileOutputStream, appropriate for handling raw binary data. Character streams, in contrast, are designed for handling character data using Reader and Writer classes, providing built-in support for Unicode and managing character encoding and decoding transparently. This distinction ensures optimal handling of different data types across various applications .

Checked exceptions in Java are exceptions that must be either caught or declared in the method signature using the throws keyword, forcing the programmer to handle them. These are derived from the java.lang.Exception class and represent conditions that a reasonable application might want to catch. Unchecked exceptions, on the other hand, are derived from java.lang.RuntimeException and are not required to be caught or declared; they represent programming errors, such as logic or arithmetic errors. Handling checked exceptions requires explicit handling or declaration, which ensures anticipated conditions are managed, while unchecked exceptions should be resolved through robust programming practices .

Interfaces in Java allow a class to implement multiple interfaces, thereby facilitating multiple inheritance which is not possible with classes alone due to the single inheritance rule in Java. This feature makes the design more flexible by separating different aspects of functionality into different interfaces, allowing classes to implement one or more interfaces as needed without being constrained by the type hierarchy. This approach encourages loose coupling and makes it easier to refactor and maintain the code .

JavaFX is a modern framework for building graphical user interfaces (GUIs) in Java, designed to replace Swing as the standard GUI library. Unlike Swing, JavaFX provides a more sophisticated set of features, such as hardware-accelerated graphics, that allow for more advanced animations and media capabilities. JavaFX uses a scene graph to manage rendering, while Swing is based on older AWT architecture. JavaFX excels with better GUI layouts and modern UI controls as well as a more pleasant developer experience through tools like JavaFX Scene Builder .

Java packages provide a namespace that helps in avoiding name conflicts by grouping related classes and interfaces together. This helps in better organization by logically categorizing similar types of classes together, easing the process of managing large software projects. Packages also control access, thus supporting encapsulation and protecting the internal workings of classes from being accessed by outside code unless explicitly permitted. Overall, packages contribute to reusable, maintainable, and modular code structures, essential for large-scale software development .

Inheritance in Java allows a new class to inherit properties and behavior from an existing class, enhancing code reusability. This means that once a base class is defined, its functionality can be extended by deriving more specific subclasses from it, rather than rewriting the same code. Inheritance supports flexibility by allowing a subclass to override methods of its superclass, thus providing specialized behavior relevant to the subclass. Additionally, polymorphism, a key feature enabled by inheritance, allows one interface to be used for a general class of actions, making systems more adaptable to changes .

Java provides four access levels: public, private, protected, and default (package-private), which manage access control for class members. Public members are accessible from any other class, private members are accessible only within their own class, protected members are accessible in subclasses and in the same package, and default members are accessible only within the same package. These access levels are crucial for encapsulation as they define the visibility and control over the class members' access, ensuring that data cannot be altered by external entities and allowing the internal representation of objects to be hidden, thus facilitating secure and modular program design .

Lambda expressions in Java 8 allow us to express instances of single-method interfaces (functional interfaces) more succinctly, thereby enhancing code clarity and reducing boilerplate code. By enabling a concise method representation, they facilitate clearer and more readable code, especially when implementing small function definitions called inline. Functional interfaces are a perfect complement to lambda expressions as they define a single abstract method, allowing for stateless and efficient functional behavior. Together, they enable higher-order functions and the use of streams, leading to efficient pipelines of processing data collections .

Java handles method overloading by allowing multiple methods in the same class with the same name but different parameter lists, enabling different behaviors depending on the call context. Method overriding, on the other hand, occurs in inheritance hierarchies, where a subclass provides a specific implementation of a method already defined in its superclass. The primary difference is that overloading relates to the same method name within a class being distinguished by parameters, while overriding relates to a method in a child class redefining a method of the parent class, enabling polymorphism .

You might also like