CS3391
OBJECT
ORIENTED PROGRAMMING
COURSE
OBJECTIVES:
•
To understand Object Oriented Programming concepts and basics of Java
programming language
•
To know the principles of packages, inheritance and interfaces
•
To develop a java application with threads and generics classes
•
To define exceptions and use I/O streams
•
To design and build Graphical User Interface Application using JAVAFX
UNIT
I INTRODUCTION TO OOP AND JAVA
Overview
of OOP – Object oriented programming paradigms – Features of Object
Oriented Programming – Java Buzzwords –
Overview of Java – Data Types, Variables and Arrays – Operators – Control
Statements – Programming Structures in Java – Defining classes in Java –
Constructors-Methods -Access specifiers - Static members- Java Doc comments
UNIT
II INHERITANCE, PACKAGES AND INTERFACES
Overloading
Methods – Objects as Parameters – Returning Objects –Static, Nested and
Inner Classes. Inheritance: Basics–
Types of Inheritance -Super keyword -Method Overriding – Dynamic Method Dispatch –Abstract Classes – final
with Inheritance. Packages and Interfaces: Packages – Packages and Member
Access –Importing Packages – Interfaces.
UNIT
III EXCEPTION HANDLING AND MULTITHREADING
Exception
Handling basics – Multiple catch Clauses – Nested try Statements – Java’s
Built-in Exceptions – User defined
Exception. Multithreaded Programming: Java Thread Model–Creating a Thread and Multiple Threads – Priorities –
Synchronization – Inter Thread Communication Suspending –Resuming, and Stopping
Threads –Multithreading. Wrappers – Auto boxing.
UNIT
IV I/O, GENERICS, STRING HANDLING
I/O
Basics – Reading and Writing Console I/O – Reading and Writing Files. Generics:
Generic Programming – Generic classes –
Generic Methods – Bounded Types – Restrictions and Limitations. Strings: Basic String class,
methods and String Buffer Class.
UNIT
V JAVAFX EVENT HANDLING, CONTROLS AND COMPONENTS JAVAFX
Events
and Controls: Event Basics – Handling Key and Mouse Events. Controls: Checkbox, ToggleButton – RadioButtons –
ListView – ComboBox – ChoiceBox – Text Controls – ScrollPane. Layouts –
FlowPane – HBox and VBox – BorderPane – StackPane – GridPane. Menus – Basics – Menu – Menu bars – MenuItem.
COURSE
OUTCOMES:
On
completion of this course, the students will be able to
CO1:Apply
the concepts of classes and objects to solve simple problems
CO2:Develop
programs using inheritance, packages and interfaces
CO3:Make
use of exception handling mechanisms and multithreaded model to solve real
world problems
CO4:Build
Java applications with I/O packages, string classes, Collections and generics
concepts
CO5:Integrate
the concepts of event handling and JavaFX components and controls for
developing GUI based applications
TEXT
BOOKS:
1.
Herbert Schildt, “Java: The Complete Reference”, 11 th Edition, McGraw Hill
Education, New Delhi, 2019
2.
Herbert Schildt, “Introducing JavaFX 8 Programming”, 1 st Edition, McGraw Hill
Education, New Delhi, 2015
REFERENCE:
1.
Cay S. Horstmann, “Core Java Fundamentals”, Volume 1, 11 th Edition, Prentice
Hall, 2018.