Advanced Java Programming
Advanced Java Programming
Course Outcomes
At the end of the course student will be able to:
1. Demonstrate best practices in designing classes and class hierarchies from problem
statements using sub-classing, abstract classes, and interfaces to achieve
polymorphism in Java.
2. Demonstrate the use of encapsulation along with inner, anonymous class and
packages.
3. Apply exception handling, generation and escalation mechanisms and practices in
writing Java programs.
4. Describe and implement the Database Handling using Java.
5. Practice self documentation and consistent coding style in writing programs.
Course Description:
Basics of Object Oriented Programming - objects, classes, polymorphism, inheritance,
static and dynamic binding. Object Oriented Programming using Java-classes, interfaces,
inheritance, polymorphism, method dispatch, features for encapsulation and modularity.
Text Books:
1. Kathy Sierra, and Bates Bert. Head First Java: A Brain-Friendly Guide. " O'Reilly Media,
Inc.", Second Edition, 2009.
2. James Rumbaugh et. al, “Object Oriented Modeling and Design”, Prentice-Hall; 1st edition,
1990.
Reference Books:
1. Naughton, Schildt, “The Complete Reference JAVA2”, TMH, 3rd Edition, 1999.
2. Kathy Sierra, and Bates Bert. Sun Certified Programmer for Java. McGraw Hill
Publications, 2008.
3. Pandey, Tiwari, “ Object Oriented Programming with JAVA” , Acme Learning Private
Limited; First Edition, 2009.
4. Horstmann, Cay S., and Gary Cornell. Core Java 2: Volume I, Fundamentals. Pearson
Education, 9th Edition, 2013.
Course Content
Declare and initialize variables (including casting of primitive data types),Define the
scope of variables, Define the structure of a Java class, Create executable Java
applications with a main method; run a Java program from the command line; including
console output. Import other Java packages to make them accessible in your code.
Compare and contrast the features and components of Java such as: platform
independence, object orientation, encapsulation, etc. Differentiate between object
reference variables and primitive variables. Read or write to object fields, Object’s
Lifecycle (creation, “dereference by reassignment” and garbage collection), JAR files.
Inheritance and its benefits, Develop code that demonstrates the use of polymorphism;
including overriding and object type versus reference type. Determine when casting is
necessary. Use super and this to access objects and constructors, Use abstract classes
and interfaces. Differentiate among checked exceptions, unchecked exceptions, and
Errors. Create a try-catch block and determine how exceptions alter normal program
flow, Describe the advantages of Exception handling, Create and invoke a method that
throws an exception, Recognize common exception classes (like NullPointerException,
ArithmeticExcpetion, ArrayIndexOutOfBoundsException, ClassCastException).
Manipulate data using the StringBuilder class and its methods, Creating and
manipulating Strings, Create and manipulate calendar data using classes from java.time
package.
Inner classes, Anonymous class, Multi threading, Collection, Applets, Java APIs, Java
Beans: Application Builder tools, The bean developer kit(BDK), Introspection,
Developing a simple bean, using Bound properties, The Java Beans API, Session Beans,
Entity Beans, Introduction to Enterprise Java beans (EJB).
Unit V: Advanced Java 8 lecture hours
Java Swing: Introduction to AWT, AWT v/s Swing, Creating a Swing Applet and Application.
Event Handling. Develop a game using event handling and AWT/swing. JDBC, The
connectivity model, JDBC/ODBC Bridge. Develop application using AWT/Swing and JDBC.
Total
100
Marks
Relationship between the Course Outcomes (COs) and Program Outcomes (POs)
Mapped
Sl. No. Course Outcomes (COs) Program
Outcomes
1. Write a program that will print a "hello World" message on the screen.
2. Write a program to read the string from the command line and display the string on the
screen.
3. Write a program to read integer from the command line and calculate check whether it is
prime or not.
4. Write a program to read an integer value say n from keyboard and print n elements of
Fibonacci series
5. Write a program to demonstrate the concept of classes and access the methods and
variables of class by creating an object of that class.
6. Write a java code to implement the method overloading.
7. Write a program to implement a constructor of a class, constructor overloading, super
and this keyword.
8. Write a java code to implement the concept of inheritance, multilevel inheritance, and
hierarchical inheritance.
9. Write a program to implement the method overriding with primitive as well as non-
primitive return types. Also show the use of "super" keyword.
10. Write a program to implement the concept of abstract and final classes.
11. Write a program to implement multiple inheritance using the interface.
12. Write a java program to demonstrate the concept of Wrapper class
13. Write a java code to demonstrate the concept of inner classes and anonymous classes.
14. Create your own package and import that package in a program.
15. Create a java program for various string handling functions.
16. Create a java program for various exception handling methods.
17. Write a java program to demonstrate the concept of Multithreading.
18. Create an applet which will take input from user and display the output after
performing string operations.
19. Create a simple bean.
20. Develop one of the following games using AWT/Swing to under the concept of event
handling:
(i) Snake (ii) Tic Tac Toe (iii) 8-Queen Problem
21. Create a java program to demonstrate basic functionality of “ms-paint”.
22. Create a java program to fetch the data from "msaccess" database using sql query.
23. Create a java program to fetch the data from "oracle11g" database using sql query.