LTP Cr
Object Oriented Proramming using Java
4-0-0 4
OBJECTIVE
I. Understand the basic object oriented programming concepts and apply them in problem
solving.
II. Illustrate inheritance concepts for reusing the program.
III. Demonstrate on the multi-tasking by using multiple threads.
IV. Understand the basics of java console and GUI based programming.
PRE-REQUISITES
Basic Knowledge of C programming language.
COURSE OUTCOMES
The students undergoing this course will be able:
CO1: Understand the basic object oriented programming concepts and apply them in problem solving.
CO2: To know about the basics of Java programming language
CO3: Implementation of inheritance (multilevel, hierarchical and multiple) by using extend and
implement keywords.
CO4: To learn how to create a package as well as handling of exceptions
CO5: To learn about the multithreading as well as synchronization of threads to ovoid
deadlocks.
UNIT I
OBJECT ORIENTED PROGRAMMING CONCEPTS AND JAVA PROGRAMMING:
OOP concepts: Classes and objects, data abstraction, encapsulation, inheritance, benefits of
inheritance, polymorphism, procedural and object oriented programming paradigm. Benefits of
OOP, Application of OOP.
Java programming: History of java, Features of Java, Different types of data types, Literals,
Variables, Type conversion and casting :Java’s automatic type conversion, Casting incompatible
types; Automatic type promotion in expression; Arrays: One-Dimensional Arrays,
Multidimensional Arrays.
UNIT II
STRINGS, OPERATORS, EXPRESSION, CONTROL STATEMENTS:
String handling: String class, Different string operations, String comparison, Searching and
modifying a string, Using string buffer class, Vector & Wrapper classes
Different types of operators: arithmetic, bitwise, logical, relational, Boolean, assignment,
conditional, special operator, operator precedence and associatively, Solving an expression.
Control statements: if-else, nested if-else switch; Iteration statements: while, do-while, for,
nested loops Jump Statements: using break, using continue, return.
UNIT III
INHERITANCE, INTERFACES:
Inheritance: Inheritance, types of inheritance, super and subclasses, member access rules,
visibility control, super keyword, preventing inheritance: final classes and methods.
Polymorphism: dynamic binding, method overriding, abstract classes and methods.
Interface: Interfaces VS Abstract classes, defining an interface, implement interfaces, accessing
implementations through interface references, extending interface, implementing multiple
inheritance.
UNIT IV
PACKAGE & EXCEPTION & APPLET PROGRAMMING:
Packages: Defining, creating and accessing a package, understanding CLASSPATH, importing
packages.
Exception Handling: Exception, Types of Exceptions, Exception Handling mechanism, multiple
catch statements, using finally statements, throwing our own exception.
Applet: Local & Remote Applets ,Steps to write & running Applets, Applet life cycle, Passing
parameters, Displaying numerical values, getting input from the user.
UNIT V
MULTITHREADING PROGRAMMING & FILE HANDLING: Java Thread Model,
Understanding Threads, Creating a Thread: extending Thread and implementing Runnable,
Creating Multiple Threads, life cycle of thread, and Thread Priorities.
Input/Output in Java: I/O Basic, Byte and Character Structure, I/O Classes, Reading Console
Input, Writing to Console Output, Reading and Writing on Files, Random Access Files, Storing
and Retrieving Objects from File. Stream Benefits.
TEXT BOOK:
1. Balaguruswamy , E., ““Programming with Java”, Tata Mcgraw Hill.
2. Herbert Schildt, “Java the complete reference”, McGraw Hill, Osborne.
REFERENCE BOOKS
1. Horetmann Cay and Cornell Gary, “Core JavaTM 2, Volume II – Advanced Features”,
7th Edition, Pearson Publisher, 2004.
2. Horetmann Cay and Cornell Gary, “Core Java Volume – I”, Pearson Education.
3. Callway Dustin R., “Inside Servlets”, Pearson Education.
4. Goodwill James and Bryan Morgan, “Developing Java Servlets”, Techmedia.
5. “Java Server Programming, Volume I and II”, Wrox Press