CS2203 Objected Oriented Programming L-T-P-C 4-0-0-4: Externals: 60marks Internals: 40marks
CS2203 Objected Oriented Programming L-T-P-C 4-0-0-4: Externals: 60marks Internals: 40marks
COURSE OBJECTIVES:
To be able to differentiate between structures oriented programming and object oriented
programming.
To be able to use object oriented programming language like Java and associated libraries
to develop object oriented programs.
To Able to understand and apply various object oriented features like inheritance, data
abstraction, encapsulation and polymorphism to solve various computing problems using
Java language.
To be able to apply concepts of operator overloading, constructors and destructors.
To be able to apply exception handling and use built-in classes
COURSE OUTCOMES:
Learning principals of object oriented programming paradigm in Java including classes,
Objects, Methods, Abstraction, encapsulation, inheritance and polymorphism.
Understand fundamentals of programming such as variables, conditional and iterative
execution, methods, packages & interfaces etc.
Learning the concept of inheritance to create new classes from existing one & Design the
classes needed given a problem specification;
Learning how to detect exceptions and to handle strings & Implement the designed classes
using the object oriented programming language
Learn how to test, verify, and debug object-oriented programs; and Learning about
multithreading and multitasking.
Creating and Demonstrating Applications using the concept of OOPS, event handling,
JDBC Connectivity used in GUI with Java.
UNIT-1:
Introduction to OOPS: Paradigms of Programming Languages, Basic concepts of Object
Oriented Programming, Differences between Procedure Oriented Programming and Object
Oriented Programming, Objects and Classes, Data abstraction and Encapsulation, Inheritance,
Polymorphism, Dynamic binding, Message communication, Benefits of OOP , Application of
OOPs. 3 CLASSES( FRIDAY-1,MONDAY-1 & 1 LAB)
Java : History, Java features, Java Environment, JDK, API. 1 CLASS (LAB)
Introduction to Java : Types of java program, Creating and Executing a Java program, Java
Tokens, Keywords, Character set, Identifiers, Literals, Separator, Java Virtual Machine (JVM),
Command Line Arguments, Comments in Java program. 2-3 CLASSES
UNIT -2: 3 WEEKS
Elements: Constants, Variables, Data types, Scope of variables, Type casting, Operators:
Arithmetic, Logical, Bit wise operator, Increment and Decrement, Relational, Assignment,
Conditional, Special operator, Expressions – Evaluation of Expressions
Decision making and Branching: Simple if statement, if, else statement, Nesting if, else, else if
Ladder, switch statement, Decision making and Looping: While loop, do, While loop, for loop,
break, labelled loop, continue Statement.-, Simple programs
Arrays: One Dimensional Array, Creating an array, Array processing, Multidimensional Array,
Vectors, Wrapper classes, Simple programs
UNIT-3:
Strings: String Array, String Methods, String Buffer Class, Simple programs
Class and objects: Defining a class, Methods, Creating objects, Accessing class members,
Constructors, Method overloading, Static members, Nesting of Methods, this keyword, Command
line input, Simple programs
Inheritance: Defining a subclass, Deriving a sub class, Single Inheritance, Multilevel
Inheritance, Hierarchical Inheritance, Overriding methods, Final variables and methods, Final
classes, Finalizer methods, Abstract methods and classes, Visibility Control: Public access,
Private access, friend, protected. Interfaces: Multiple Inheritance, Defining interface, Extending
interface, Implementing Interface, Accessing interface variables, Simple programs
UNIT- 4:
Packages: Java API Packages, System Packages, Naming Conventions, Creating & Accessing a
Package, Adding Class to a Package, Hiding Classes, Programs
Applets: Introduction, Applet Life cycle, Creating & Executing an Applet, Applet tags in HTML,
Parameter tag, Aligning the display, Graphics Class: Drawing and filling lines, Rectangles,
Polygon, Circles, Arcs, Line Graphs, Drawing Bar charts, Programs
AWT Components and Even Handlers: Abstract window tool kit, Event Handlers, Event
Listeners, AWT Controls and Event Handling: Labels, TextComponent, ActionEvent, Buttons,
CheckBoxes, ItemEvent, Choice, Scrollbars, Layout Managers- Input Events, Menus, Programs
UNIT-5:
Exception Handling: Limitations of Error handling, Advantages of Exception Handling, Types
of Errors, Basics of Exception Handling, try blocks, throwing an exception, catching an
exception, finally statement
Multithreading: Creating Threads, Life of a Thread, Defining & Running Thread, Thread
Methods, Thread Priority, Synchronization, Implementing runnable interface, Thread Scheduling.
I/O Streams: File, Streams, Advantages, The stream classes, Byte streams, Character streams.
JDBC, ODBC Drivers, JDBC ODBC Bridges, Seven Steps to JDBC, Importing java SQL
Packages, Loading & Registering the drivers, Establishing connection. Creating &Executing the
statement.
Suggested References:
1. Programming with Java - E. Balagurusamy
2. Java the complete reference, 7th editon, Herbert schildt, TMH.
3. Understanding OOP with Java, updated edition, T. Budd, pearsoneduction.
4. Object oriented Programming in Java - Dr. G.Thampi
5. Let us Java – Yashavant Kanetkar - BPB Publications, New Delhi - First Edition 2012
6. An Introduction to Oops with Java - C Thomas WU - TataMc-Graw Hill, New Delhi - 4th
Edition
7. Object oriented Programming through Java - ISRD Group - TataMc-Graw Hill, New Delhi
- Eight Reprint 2011
CS2803 OBJECTED ORIENTED PROGRAMMING LAB
Externals: 60Marks L-T-P-C
Internals: 40Marks 0-0-3-2
COURSE OBJECTIVES:
COURSE OUTCOMES:
Be able to analyze and design a computer program to solve real world problems based on
object-oriented principles.
Be able to write simple GUI interfaces for a computer program to interact with users, and
to understand the event-based GUI handling principles.
A competence to design, write, compile, test and execute straightforward programs using a
high level language.
Demonstrate the ability to employ various types of selection constructs in a Java program.
Be able to employ a hierarchy of Java classes to provide a solution to a given set of
requirements.
Become familiar with the fundamentals and to acquire programming skills in the Java
language.
Experiments:
1. A program to illustrate the concept of class with constructors, methods and overloading.
2. A program to illustrate the concept of inheritance and dynamic polymorphism.
3. A program to illustrate the usage of abstract class.
4. A program to illustrate multithreading.
5. A program to illustrate thread synchronization.
6. A program to illustrate Exception handling.
7. A program to illustrate user-defined Exceptions
8. A program to demonstrate use of User-defined Packages.
9. A program using String Tokenize.
10. A program using Linked list class
11. A program using Tree Set class
12. A program using Hash Set and Iterator classes
13. A program using Map classes.
14. A program using Enumeration and Comparator interfaces.
15. A program using File and Filename Filter
16. A program to illustrate the usage of Byte and Character I/O streams.
17. A program to illustrate the usage of Serialization.
18. Program using Data class.
19. An application involving GUI with different controls, menus and event handling.
20. A program to implement an applet.
For the detailed list of programs refer the lab manual.
Note: Any experiment according to the syllabus of CS2203 can be substituted