[Go to site: main page, start]

0% found this document useful (0 votes)
73 views2 pages

JNTUH R22 Java Programming Syllabus

This document outlines the syllabus for the Java Programming course offered at JNTU Hyderabad. The course objectives are to introduce object-oriented programming principles in Java, exception handling, collections, multithreading, JDBC, and GUI programming. The course outcomes are to develop programs using OOP, exceptions, collections, multithreading, JDBC, and design GUI applications. The syllabus covers 5 units - foundations of Java, exception handling, packages and I/O, collections and multithreading, and GUI programming with Swing. References for textbooks are also provided, along with a mapping of course outcomes to program outcomes and program specific outcomes.

Uploaded by

K. VIJAY KUMAR
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)
73 views2 pages

JNTUH R22 Java Programming Syllabus

This document outlines the syllabus for the Java Programming course offered at JNTU Hyderabad. The course objectives are to introduce object-oriented programming principles in Java, exception handling, collections, multithreading, JDBC, and GUI programming. The course outcomes are to develop programs using OOP, exceptions, collections, multithreading, JDBC, and design GUI applications. The syllabus covers 5 units - foundations of Java, exception handling, packages and I/O, collections and multithreading, and GUI programming with Swing. References for textbooks are also provided, along with a mapping of course outcomes to program outcomes and program specific outcomes.

Uploaded by

K. VIJAY KUMAR
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

R22 [Link].

IT Syllabus JNTU Hyderabad


IT611OE: JAVA PROGRAMMING (Open Elective – I)

[Link]. III Year II Sem. L T P C


3 0 0 3
Course Objectives:
 To introduce object-oriented programming principles and apply them in solving problems
 To introduce the concepts of exception handling and I/O classes.
 To introduce java collection framework and the implementation of packages.
 To introduce the concepts of multithreading and JDBC.
 To introduce the design of Graphical User Interface using swing controls.

Course Outcomes:
 Solve real world problems using OOP techniques.
 Develop programs using the concepts of exception handling.
 Solve problems using packages and java collection framework.
 Develop multithreaded applications with synchronization and applications using JDBC.
 Design GUI based applications.

UNIT - I
Foundations of Java: History of Java, Java Features, Variables, Data Types, Operators, Expressions,
Control Statements. Elements of Java - Class, Object, Methods, Constructors and Access Modifiers,
Generics, Inner classes, String class and Annotations.
OOP Principles: Encapsulation – concept, setter and getter method usage, this keyword. Inheritance
- concept, Inheritance Types, super keyword. Polymorphism – concept, Method Overriding usage and
Type Casting. Abstraction – concept, abstract keyword and Interface.

UNIT – II
Exception Handling: Exception and Error, Exception Types, Exception Handler, Exception Handling
Clauses – try, catch, finally, throws and the throw statement, Built-in-Exceptions and Custom
Exceptions.
Files and I/O Streams: The file class, Streams, The Byte Streams, Filtered Byte Streams, The Random
Access File class.

UNIT – III
Packages- Defining a Package, CLASSPATH, Access Specifiers, importing packages. Few Utility
Classes - String Tokenizer, BitSet, Date, Calendar, Random, Formatter, Scanner.
Collections: Collections overview, Collection Interfaces, Collections Implementation Classes,
Sorting in Collections, Comparable and Comparator Interfaces.

UNIT – IV
Multithreading: Process and Thread, Differences between thread-based multitasking and process-
based multitasking, Java thread life cycle, creating threads, thread priorities, synchronizing threads,
inter thread communication.
Java Database Connectivity: Types of Drivers, JDBC architecture, JDBC Classes and Interfaces,
Basic steps in Developing JDBC Application, Creating a New Database and Table with JDBC.

UNIT - V
GUI Programming with Swing – Introduction, limitations of AWT, MVC architecture, components,
containers, Layout Manager Classes, Simple Applications using AWT and Swing.
Event Handling- The Delegation event model- Events, Event sources, Event Listeners, Event
classes, Handling mouse and keyboard events, Adapter classes.

Page 104 of 155


R22 [Link]. IT Syllabus JNTU Hyderabad

TEXT BOOKS:
1. Java The complete reference, 9th edition, Herbert Schildt, McGraw Hill Education
(India) Pvt. Ltd.
2. Understanding Object-Oriented Programming with Java, updated edition, T. Budd,
Pearson Education.

REFERENCE BOOKS:
1. An Introduction to programming and OO design using Java, J. Nino and F.A. Hosch, John
Wiley & sons
2. Introduction to Java programming, Y. Daniel Liang, Pearson Education.
3. Object Oriented Programming through Java, P. Radha Krishna, University Press.
4. Programming in Java, S. Malhotra, S. Chudhary, 2nd edition, Oxford Univ. Press.
5. Java Programming and Object-oriented Application Development, R. A. Johnson,
Cengage Learning.

CO-PO-PSO Mapping

PO- PO- PO- PO-


PO-2 PO-3 PO-5 PO-7 PO-9 PO-10 PO-11 PO-12 PSO-1 PSO-2 PSO-3
1 4 6 8
CO-1 M M H H M L M M H
CO-2 M M M M H M M M H
CO-3 M H M M L M L M H
CO-4 M M L H M L L M H
CO-5 M M H L M L M M H

Page 104 of 155

Common questions

Powered by AI

Checked exceptions are checked at compile time, meaning methods that can throw these exceptions must declare them using the throws keyword or handle them with a try-catch block. Unchecked exceptions, such as runtime exceptions, are checked at runtime and do not require explicit specification or handling in code. This affects error handling strategies as checked exceptions enforce compile-time error checking, promoting robust code, whereas unchecked exceptions often result from programming bugs that need fixing rather than handling .

Encapsulation, one of the pillars of object-oriented programming, contributes to software security by restricting direct access to an object's internal state and requiring all interactions to occur through encapsulated methods. This hides the internal implementation from the outside world, reducing the risk of unintended interference and enhancing security. Additionally, encapsulation aids in software maintenance by allowing changes to the internal implementation without affecting other parts of the program, as long as the public interface remains unchanged .

Polymorphism in Java allows objects of different classes to be treated as objects of a common superclass. This enables code flexibility and reusability by allowing methods to process objects differently based on their actual class type while using the same interface. It supports method overriding, letting subclasses provide specific implementations. This means the core logic can work with different types and functionalities, leading to more generalized and reusable code .

Access modifiers in Java, such as public, protected, and private, define the visibility and accessibility of classes, methods, and variables. They influence design by allowing encapsulation and information hiding, thus guiding how classes interact with each other within a package and across packages. Public members are accessible from anywhere, protected members are accessible within the same package or subclasses, and private members are only accessible within the class itself. This controls how a class exposes its functionality, promotes modular design, and enhances maintainability .

Generics in Java allow classes, interfaces, and methods to operate on typed objects while providing compile-time type safety. By enforcing type checks at compile time, generics prevent ClassCastException during runtime, enhancing type safety. They also eliminate the need for explicit casting and enable implementing algorithms that work with any data type while maintaining code flexibility and reusability. This leads to more maintainable and cleaner code, as one class definition can work seamlessly with different data types .

Java's multithreading allows multiple threads to run concurrently within a single process, sharing the same memory space, which can lead to more efficient use of resources as compared to process-based multitasking where each process runs independently with its own memory space. This difference implies that in program design, developers need to manage shared resources carefully using synchronization to prevent race conditions and ensure thread safety .

Swing, built on top of AWT, provides a more sophisticated set of GUI components that are lightweight, platform-independent, and offer a pluggable look-and-feel. Unlike AWT, which uses the native system's resources, Swing components are pure Java components with more functionality, such as enhanced standard components, event handling, and extended controls. This makes Swing more versatile for complex GUI applications while maintaining consistency across platforms. Its use of MVC architecture also allows more structured and maintainable code designs compared to AWT .

Interfaces in Java define a contract for what a class can do without specifying the implementation details. By abstracting method definitions, interfaces allow classes to implement these in various ways, enabling abstraction. This is beneficial for decoupling, as classes can interact with each other through interfaces rather than concrete implementations. Interfaces also facilitate multiple inheritance in Java, allowing a class to implement multiple interfaces and thereby adhere to different contracts simultaneously .

The Java Collection Framework provides a set of interfaces and classes that implement various collections such as lists, sets, and maps. Utilizing these collections, developers can achieve efficient data storage, retrieval, and manipulation. For instance, different implementations offer unique advantages: ArrayList provides fast random access, LinkedList allows quick insertions and deletions, and HashMap offers fast access based on keys. Moreover, sorting collections through Comparator/Comparable interfaces and using enhanced for loops and Streams can enhance efficiency and readability of operations .

Java's JDBC API provides a standardized interface for accessing different databases, allowing developers to connect to any database without changing the application code. Key benefits include its vendor-neutrality, support for SQL commands, and the ability to execute statements, retrieve results, and process errors uniformly across databases. Moreover, JDBC is extensible with various drivers offering additional functionalities, such as connection pooling and transaction management, which enhance performance and reliability .

You might also like