Object Oriented Programming through JAVA
Object Oriented Programming through JAVA
Course Objectives:
The course aims to give students hands – on experience and train them on the concepts of the
Java programming language.
• Learn the fundamentals of object-oriented programming in Java, including defining classes,
invoking methods, 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
CO-1. Understand Object-Oriented Programming Concepts
CO-2. Develop and Utilize Classes and Objects
CO-3. Implement Arrays and Inheritance
CO-4. Utilize Java Packages and Handle Exceptions
CO-5. Develop Multithreaded Applications and Utilize JDBC
UNIT I
Object Oriented Programming: Basic concepts, Principles.
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,
Ternary Operator, Switch Statement, Iteration Statements, while Expression, do–while Loop,
for Loop, Nested for Loop, For–Each for Loop, Break Statement, Continue Statement.
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.
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, Final Class and Methods, 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, Overriding Methods, Attributes Final and Static.
UNIT III
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.
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: Introduction, Declaration of Interface, Implementation of Interface, Multiple
Interfaces, Nested Interfaces, Inheritance of Interfaces, Default Methods in Interfaces, Static
Methods in Interface, Functional Interfaces.
UNIT IV
Packages and Java Library: Introduction, Defining Package, Importing Packages and Classes
into Programs, Path and Class Path, Access Control, Packages in Java SE, Java.lang Package
and its Classes, Class Object, class Math, Java util Classes and Interfaces.
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.
UNIT V
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.
Java Database Connectivity: Introduction, JDBC Architecture, Installing MySQL and
MySQL Connector/J, JDBC Environment Setup, Establishing JDBC Database Connections,
ResultSet Interface
Java FX GUI: Java FX Scene Builder, Java FX App Window Structure, displaying text and
image, event handling.
Text Books:
1. JAVA one step ahead, Anitha Seth, B.L.Juneja, Oxford.
2. Joy with JAVA, Fundamentals of Object Oriented Programming, Debasis
Samanta, Monalisa Sarma, Cambridge, 2023.
3. JAVA 9 for Programmers, Paul Deitel, Harvey Deitel, 4th Edition,
Pearson.
References Books:
1. The complete Reference Java, 11th edition, Herbert Schildt, TMH
2. Introduction to Java programming, 7th Edition, Y Daniel Liang,
Pearson
Online Resources:
1. https://nptel.ac.in/courses/106/105/106105191/
2. https://infyspringboard.onwingspan.com/web/en/app/toc/lex_auth_
012880464547618816347_shared/overview
CO-PO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2
CO1 3 2 2 - - - - - - - - - 2 -
CO2 3 3 3 - - - - - - - - - 3 2
CO3 3 3 3 - - - - - - - - - 3 2
CO4 3 3 2 - 3 - - - - - - - 2 -
CO5 3 3 3 3 3 - - - - - - 2 3 2