[Go to site: main page, start]

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

Object Oriented Programming in Java

The document outlines a course on object oriented programming using Java. It provides details on the course including objectives, outcomes, units of study, suggested readings and references. The course covers OOP concepts, Java fundamentals, I/O, collections, AWT, event handling, Swing and networking.

Uploaded by

Mubasheer
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)
83 views2 pages

Object Oriented Programming in Java

The document outlines a course on object oriented programming using Java. It provides details on the course including objectives, outcomes, units of study, suggested readings and references. The course covers OOP concepts, Java fundamentals, I/O, collections, AWT, event handling, Swing and networking.

Uploaded by

Mubasheer
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
  • Course Information
  • Suggested Readings

MCA NSAKCET (A) 2023-2025

PCC103 Object Oriented Programming using Java

Instruction 3 Periods per week


Duration of University Examination 3 Hours
University Examination 60 Marks
Sessional 40 Marks
Credits 4

Course Objectives
1. Learn the basics of object oriented programming
2. Study Java I/O mechanisms
3. Explore Java API
4. Develop graphics based Java programs
5. Learn swing framework

Course Outcomes
After the completion of the course, students will be able to:
1. Explain OOPs features and concepts
2. Write basic Java programs
3. Write I/O programs in Java
4. Use various built-in Java classes and methods
5. Create window based Java programs

UNIT-I
Object Oriented System Development: Understanding Object Oriented Development,
Understanding Object Concepts, Benefits of Object Oriented Development.
Java Programming Fundamentals: Introduction, Overview of Java, Data Type, Variables
and Arrays, Operators, Control statements, Classes, Methods, Inheritance, Packages and
Interfaces, Inner Classes.

UNIT-II
I/O basics, Stream and Byte classes, Character Streams, Reading Console input and output,
Print Writer Class, String Handling, Exceptions Handling, Multithreaded Programming.

UNIT-III
Exploring Java Language, Collections Overview, Collections Interfaces, Collections Classes,
Iterators, Random Access Interface, Maps, Comparators, Arrays, Legacy classes and
interfaces, Sting Tokenizer, BitSet, Date, Calendar, Timer.

UNIT-IV
Introducing AWT working With Graphics: AWT Classes, Working with Graphics.
Event Handling: Two Event Handling Mechanisms, The Delegation Event Model, Event
Classes, Source of Events, Event Listener Interfaces.
AWT Controls: Control Fundamentals, Labels, Using Buttons, Applying Check Boxes,
CheckboxGroup, Choice Controls, Using Lists, Managing Scroll Bars, Using TextField,
Using TextArea, Understanding Layout Managers, Menu bars and Menus, Dialog Boxes,
FileDialog, Handling events by Extending AWT Components, Exploring the controls, Menus
and Layout Managers.

6
MCA NSAKCET (A) 2023-2025

UNIT-V
Introduction to Swing Package, Java I/O classes and interfaces, Reading and Writing Files,
Serialization, Introduction to Java Network Programming, Object Class, Exploring Image
package.

Suggested Readings:

1. Herbert Schildt, The Complete Reference Java, 9th Edition, Tata McGrawHill, 2005.
2. Bruce Eckel, Thinking in Java, 4th Edition, Pearson Education
3. Dietel and Dietel, Java: How to Program, 5th Edition, Prentice Hall
4. James M Slack, Programming and Problem solving with JAVA, Thomson
Learning, 2002
5. C Thomas Wu, An Introduction to Object Oriented programming withJava,
Tata McGraw Hill, 2005.
6. Kathy Sierra, Bert Bates, Head First Java, 2nd Edition, A Brain-FriendlyGuide,
Publisher: O'Reilly Media, February 2005.

Common questions

Powered by AI

Object-Oriented Development offers numerous advantages including improved software maintainability, reusability of code, and a more intuitive mapping between real-world problems and software solutions. These benefits stem from key object-oriented concepts like encapsulation, inheritance, and polymorphism, which allow for modular and scalable system design .

Java's control statements, such as if-else, switch, loops (while, for, do-while), and break/continue, provide a comprehensive set of tools that allow for precise control over the flow of execution. This is critical in developing complex algorithms and responding dynamically to runtime conditions, enhancing programming flexibility and robustness compared to less feature-rich paradigms .

The Delegation Event Model is a cornerstone of Java's event handling mechanism, promoting a separation of concerns between user interface components and their behavior. In this model, an event is generated by a source and delegated to a listener object via listener interfaces. This design allows for better modularity and flexibility by decoupling event generation from handling, thus supporting the implementation of reusable GUI components and streamlined interaction logic .

Java handles input-output operations through its comprehensive I/O API, which includes classes like FileInputStream, FileOutputStream for byte streams, and FileReader, FileWriter for character streams. These classes support various I/O operations such as reading from and writing to files, handling data streams, and performing network operations. The PrintWriter class provides functionalities for formatted output, enhancing I/O operations with convenience and efficiency .

Java's built-in classes, such as String, StringBuffer, and StringBuilder, provide extensive methods for string handling and manipulation, enabling tasks like concatenation, modification, searching, and conversion. These classes improve performance and memory management, especially StringBuffer and StringBuilder, which are mutable and thus more efficient for frequent modifications .

Java APIs, such as AWT and Swing, offer comprehensive classes and interfaces for creating and managing graphical user interfaces (GUIs). AWT provides basic components and controls, while Swing extends AWT with more sophisticated widgets and is built on a lightweight platform-independent architecture. These APIs unify GUI creation tasks, manage event handling, and support layout management, facilitating the development of rich, user-friendly applications .

AWT (Abstract Window Toolkit) and Swing are two major GUI toolkits in Java. AWT is built on native system components, providing a comparatively thin layer over the native OS's GUI. This results in faster execution on some systems but less flexibility and cross-platform consistency. Swing, on the other hand, is entirely implemented in Java with its own lightweight components, which ensures cross-platform uniformity and a more extensive set of advanced interface elements, providing greater flexibility and functionality .

Serialization in Java Network Programming is crucial as it allows for the conversion of complex objects into byte streams, facilitating their transmission over a network or saving to a file. This process supports distributed applications by enabling object state persistence and recreating objects remotely. Serialization simplifies communication and data exchange between different components of networked applications, enhancing functionality and interoperability .

The Java Collections Framework standardizes the way groups of objects are handled across Java applications, providing a set of interfaces and their implementations (e.g., List, Set, Map). It simplifies development by offering common operations such as traversal, modification, sorting, and searching. This framework enhances code reuse, type safety through generics, and reduces boilerplate code, thereby improving data management efficacy in Java applications .

Java's multithreaded programming capabilities enable concurrent execution of two or more threads, which can perform tasks simultaneously, thus improving program efficiency. This is particularly beneficial for applications requiring asynchronous operations or those that need to perform several tasks at once, such as web servers and multimedia apps, by optimizing resource utilization and reducing CPU idle time .

6
MCA NSAKCET (A) 2023-2025
PCC103
Object Oriented Programming using Java
Instruction
3 Periods per week
Duration of Universi
7
MCA NSAKCET (A) 2023-2025
UNIT-V
Introduction to Swing Package, Java I/O classes and interfaces, Reading and Writing Files,

You might also like