CS8392     OBJECT ORIENTED PROGRAMMING     L T P C 3 0 0 3

OBJECTIVES:

  • To understandObject Oriented Programming concepts and basic characteristics of Java
  • To know the principles of packages,  inheritance and interfaces
  • To define exceptions and use I/O streams
  • To develop a java application with threads and generics classes
  • To design and build simple Graphical User Interfaces

UNIT I     INTRODUCTION TO OOP AND JAVA FUNDAMENTALS     10

Object  Oriented  Programming -Abstraction –objects  and  classes -Encapsulation-Inheritance -Polymorphism-OOP  in    Java –Characteristics  of  Java –The  Java  Environment-Java  Source File  -Structure –Compilation.  Fundamental Programming Structures in Java –Defining classes in Java –constructors,  methods -access    specifiers -static  members -Comments,  Data  Types, Variables, Operators, Control Flow, Arrays , Packages -JavaDoc comments.

UNIT II     INHERITANCE AND INTERFACES     9

Inheritance –Super classes-sub classes –Protected members –constructors in sub classes-the Object class –abstract classes and methods-final methods and classes –Interfaces –defining an interface,  implementing  interface,  differences  between  classes  and  interfaces  and  extending interfaces -Object cloning -inner classes, ArrayLists -Strings

UNIT III     EXCEPTIONHANDLING AND I/O     9

Exceptions -exception hierarchy -throwing and catching exceptions –built-in exceptions, creating own  exceptions,  Stack  Trace  Elements.  Input  /  Output  Basics –Streams –Byte  streams  and Character streams –Reading and Writing Console –Reading and Writing Files

UNIT IV     MULTITHREADING AND GENERIC PROGRAMMING     8

Differences   between   multi-threading   and   multitasking,   thread   life   cycle,   creating   threads, synchronizing  threads,  Inter-thread  communication,  daemon  threads,  thread  groups.  Generic Programming –Generic  classes –generic  methods –Bounded  Types –Restrictions  and Limitations.

UNIT V     EVENT DRIVEN PROGRAMMING     9

Graphics programming -Frame –Components -working with 2D shapes -Using color, fonts, and images -Basics  of  event  handling -event  handlers -adapter classes -actions -mouse  events -AWT event hierarchy -Introduction to Swing –layout  management -Swing Components –Text Fields  ,  Text  Areas –Buttons-Check  Boxes –Radio  Buttons –Lists-choices-Scrollbars –Windows –Menus –Dialog Boxes.

TOTAL: 45

PERIODS OUTCOMES:

Upon completion of the course, students will be able to:

  • Develop  Java programs using OOP principles
  • Develop  Java programs  with the concepts  inheritance and interfaces
  • Build Java applications using  exceptions and  I/O streams
  • Develop  Java applications with threads and generics classes
  • Develop interactive Java programs using swings

TEXT BOOKS:

1. Herbert Schildt, ―Java The complete reference‖, 8thEdition, McGraw Hill Education, 2011.

2. Cay  S.  Horstmann,  Gary  cornell,  ―Core  Java  Volume –I  Fundamentals‖,  9thEdition, Prentice Hall, 2013.

REFERENCES:

1. Paul Deitel, Harvey Deitel, ―Java SE 8 for programmers‖, 3rdEdition, Pearson, 2015.

2. Steven Holzner, ―Java 2 Black book‖, Dreamtech press, 2011.

3. Timothy  Budd,  ―Understanding  Object-oriented  programming  with  Java‖,  Updated  Edition, Pearson Education, 2000.