|
With effect from the academic year 2015-2016 |
|
BIT 255 |
|
|
OOP USING JAVA |
|
|
Instruction |
4 |
Periods per week |
Duration of University Examination |
3 |
Hours |
University Examination |
75 |
Marks |
Sessional |
25 |
Marks |
Course Objectives:
- To understand fundamentals of object-oriented programming in Java which includes defining classes, invoking methods, using class libraries.
- To create Java application programs using sound OOP practices such as interfaces, APIs and error exception handling.
- Using API to solve real world problems.
UNIT- I
Object Oriented System Development: Understanding Object Oriented Development, Understanding Object Concepts, Benefits of Object Oriented Development.
Java Programming Fundamentals: History of Java, Java buzzwords, data types, variables, arrays, operators, expressions, control statements, type conversion and casting, simple java program, concepts of classes, objects, constructors, methods, access control, this keyword, garbage collection, overloading methods and constructors, parameter passing, recursion, nested and inner classes, exploring string class.
UNIT- II
Inheritance: Inheritance concept, benefits of inheritance, Super classes and Sub classes, Member access rules, Inheritance hierarchies, super uses, preventing inheritance: final classes and methods. Polymorphism - dynamic binding, method overriding, abstract classes and methods, the Object class and its methods.
Interfaces: Interfaces vs. Abstract classes, defining an interface, implementing interfaces, accessing implementations through interface references, extending interface. Packages: Defining, Creating and Accessing a Package, Understanding CLASSPATH, importing packages
UNIT- III
Exception handling: Dealing with errors, benefits of exception handling, the classification of exceptions - exception hierarchy, checked exceptions and unchecked exceptions, usage of try, catch, throw, throws and finally, rethrowing exceptions, exception specification, built in exceptions, creating own exception sub classes Multithreading: Differences between multiple processes and multiple threads, thread states, creating threads, interrupting threads, thread priorities, synchronizing threads, interthread communication, thread groups, daemon threads
UNIT- IV
Collections: Overview of Java Collection frame work, Commonly used Collection classes – ArrayList, LinkedList, HashSet, HashMap, TreeMap, Collection Interfaces – Collection, Set, List, Map, Legacy Collection classes – Vector, Hashtable, Stack, Dictionary(abstract), Enumeration interface, Iteration over Collections – Iterator interface, ListIterator interface.
Other Utility classes: String Tokenizer, java.util. Files – streams - byte streams, character streams, text Input/output, binary input/output, random access file operations, File management using File class, java.io. , serialization
UNIT- V
GUI Programming with java: The AWT class hierarchy, Introduction to Swing, Swing vs. AWT, MVC architecture, AWT Classes.
AWT Controls: Components, container, panel, window, frames, canvas, Font class, Color class and Graphics, Layout Managers, Menu bars and Menus, Dialog Boxes, FileDialog.
Event Handling: Handling mouse and keyboard events, Delegation Event Model, Event Classes, Source of Events, Event Listener Interfaces. Examples: handling a button click, handling mouse and keyboard events, Adapter classes.
Applets – Inheritance hierarchy for applets, differences between applets and applications, life cycle of an applet, Developing applets and testing, passing parameters to applets, applet security issues.
Suggested Reading:
- 1.Herbert Scheldt, “The Complete Reference Java, 7th Edition, Tata McGraw Hill, 2006.
- 2.James M Slack, Programming and Problem Solving with JAVA, Thomson Learning, 2002.
- 3.C Thomas Wu, An Introduction to Object Oriented Programming with Java 5th Edition, McGraw Hill Publishing, 2010.
- 4.H. M. Dietel and P. J. Dietel, Java How to Program, Sixth Edition, Pearson Education /