22CA026_Advance Java Programming_BCA6
22CA026_Advance Java Programming_BCA6
Course Handout
1
National Higher Education Qualification Framework Level, Refer to annexure
2
NHEQF Level Descriptor, Refer to Annexure & Learning outcomes descriptors for qualification for all levels on the NHEQF
3
Types of Assessments can be referred from Type of Assessments. Refer to Annexure.
4
For SDG Mapping with Courses, Pl refer SDG Mapping policy for Courses
Page 1 of 23
22CA026 / Advance Java Programming
Course Plan
CLO-PO Mapping
CLO PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 Type of
Assessment’s3
CLO01 M M M M Formative
assessments
CLO02 H M M M M Summative
assessments
CLO03 H M M L Formative
assessments
CLO04 M M H H M M Formative
assessments
CLO05 M H H L M M Summative
assessments
H=High, M=Medium, L=Low
3. Recommended Books:
B01: The Java: Complete Reference, Patrick Naughton, Herbert Schildt, 9th edition, McGraw-Hill
B02: Core Java an Integrated Approach, Dr. R. Nageswara Rao, edition, 1st edition, Dreamtech Press
B03: Core Java an Integrated Approach, Dr. R. Nageswara Rao, edition, 1st edition, Dreamtech Press
B04: Java in a Nutshell, David Flanagan, 4th edition, O'Reilly Media Publication
4. Other readings and relevant websites:
Eclipse
Page 2 of 23
22CA026 / Advance Java Programming
Course Plan
Lab Plan
Page 3 of 23
22CA026 / Advance Java Programming
Course Plan
Implement the scenario by taking input only through command line arguments
2 Perform following operations on number entered by user.
a) Check whether the number is a strong number or not. [Strong number is a number whose sum of
factorials of each digit is equal to the original number. Example 145]
b) Display prime numbers within a range starting from 1 till the number entered by user
c) Create a multiplication table for the entered number till 100
d) Check whether the number is an Armstrong number or not
e) Generate the reverse of the entered number
Create separate functions for each of these tasks.
3. Perform the following on strings entered by user:
a) Count Vowels, consonants, capital Letters, small letters, numbers and spaces in the string
b) Enter the reversed string in a character array
c) Convert the given string into uppercase
d) Check whether the entered string is a palindrome or not
Create separate functions for each of these tasks
4-5 Consider three String class objects. Split the strings in to three parts FIRST, MIDDLE AND LAST.
a) Check the length of each string. If the length is a multiple of 3, split the string in three equal parts
b) If length is not a multiple of 3 and remainder is one, split the string such that first and last portions
are same length whereas the middle portion length is one less than the two other portions
c) If length is not a multiple of 3 and remainder is two, split the string such that first and last portions
are same length whereas the middle portion length is one less than the two other portions
Combine the strings in the order given below to generate the final string
Final string1=[FIRST of first string][MIDDLE of third string][LAST of second string]
Final string 2=[FIRST of second string][MIDDLE of first string][LAST of third string]
Final string 3=[FIRST of third string][MIDDLE of second string][LAST of third string]
Display all three final strings
6 A hotel has different rooms. The types of room are:
Implement the scenario by creating a class Hotel with data members: customer_name, name_of_hotel,
customer_phone, customer_city, customer_room_type, no_of_days. Create an array of Hotel class
objects representing various customers and solve the following queries:
a) Display the details of Customer whose bill is more than 10000
b) Count number of customers opting for all types of rooms
c) Count number of customers who belong to same city.
Page 4 of 23
22CA026 / Advance Java Programming
Course Plan
7-8 Create a number guessing game. Ask the user to guess the number.
a) If the number entered by the user is more than the guessed number and the difference is more than
5, throw an exception of yours and give message “You have gone too far”
b) If the number entered by the user is more than the guessed number and the difference is more than
2, throw an exception of yours and give message “You have gone a bit ahead”
c) If the number entered by the user is less than the guessed number and the difference is more than -5,
throw an exception of yours and give message “You have stopped too early”
d) If the number entered by the user is less than the guessed number and the difference is more than -2,
throw an exception of yours and give message “You have stopped a bit early”
e) If the number entered by the user is equal to the guessed number, give him a message “you got it!!.
Congrats”.
The number of turns given to a player should not be more than 5 and if he crosses the turns, throw an
exception and give message “Your attempts are over!!. Better Luck next time”.
9-10
Ramesh is an employee of a Bank whose hierarchy is as shown in the figure. He has to maintain the
transactions of bank in various branches. Implement the scenario by creating an array of Bank class
objects. Fill the array with objects of subclasses as per the request customer of specific branch. Each
customer should have a unique ID. Store the details of customers till the user prompts for no further
entries.
Each customer should be provided options for:
a) displaying his complete details
b) Credit/debit his account
Each account should have interest added to it after every credit.
Page 5 of 23
22CA026 / Advance Java Programming
Course Plan
If the list has an odd length, the last element is not part of a pair and is also considered "bad;" it should
therefore be removed by your method. If an empty list is passed in, the list should still be empty at the
end of the call. You may assume that the list passed is not null. You may not use any other arrays,
lists, or other data structures to help you solve this problem, though you can create as many simple
variables as you like.
15-16 Ramesh is a mathematics teacher. He is currently teaching students how to perform various mathematical
operations on polynomials. Being fond of programming, he wants to generate a program in java that can
do the tasks for him. Use the LinkedList collection defined in Java to perform the following operations on
polynomials.
a) Entering a polynomial of any degree
b) Add/ Subtract two polynomials and display result
c) Multiply two polynomials and display the result
d) Print the coefficient of polynomial term with largest exponent from three polynomials
e) Copy the contents of one polynomial to another
Page 6 of 23
22CA026 / Advance Java Programming
Course Plan
The method receives a stack of integers (implemented in the provided Stack class) and returns a new stack
with all even numbers from the initial stack (preserving their original order). For example, given the stack
{ 4, 5, 3, 2, 6, 9, 2 } (where 4 is at the top of the stack), the method returns { 4, 2, 6, 2 }. The initial stack
should retain its original values when the method ends. The class Stack has methods: push (to add an
integer to the stack), pop (to remove an integer from the stack) and isEmpty (to know whether the stack is
empty or not).
19-20 Write a java program to perform following using queue:
a) Reverse the queue using stack
b) Reverse the first half of the elements and leave the second half unchanged.
c) Move all even elements to the front of the queue while maintaining the relative order of other
elements.
21
1.Use swings to create a counter that increments the counter on every click of the button count.
2.using swings, create another GUI in which a number is entered by the user and its factorial is
displayed in the text field. On click of next button, next number is taken and its factorial is displayed
in the text field.
22-24
Page 7 of 23
22CA026 / Advance Java Programming
Course Plan
25-27 Ramesh is a data entry operator in an organisation. he has to maintain the details of employees which he
regularly needs to fetch and update as per the requirement. Design an Graphical interface for him to get
the details of employees: the requirements of GUI are:
a) A login page where existing user can enter username and password
b) A signup for new employees in which details of employees are to be entered.
7. Delivery/Instructional Resources
Theory Plan:
Lec Topics CLO Book No, TLM3 ALM4 Web References Audio-Video
t. CH No,
No. Page No
1-2 Java Basics: CLO01 B01 Lecture http://www.javatpoint.c https://www.youtube.co
Quiz/T m/watch?v=8px36FWLd
Introduction to om/java-tutorial
est Ds
basic concepts of Questio
ns
java.
3-5 Constructor and CLO01 Questio Quiz/T https://www.tutorialspo https://www.youtube.co
B01
ning est m/watch?v=8px36FWLd
class concept: int.com/java/
Questio Ds
Introduction to ns
constructor, object
and class concept
in context of java
language.
6-8 Arrays: CLO01 Lecture Quiz/T https://www.udemy.co https://www.youtube.co
B03
est m/watch?v=8px36FWLd
Introduction to m/java-tutorial/
Questio Ds
concept of array of ns
primitives and
objects (one and
two dimensional).
9-11 Inheritance: CLO01 B04 Questio https://docs.oracle.com/ https://www.youtube.co
ning Group m/watch?v=8px36FWLd
Meaning of javase/tutorial/
Discuss Ds
inheritance in java ion
and types of
inheritances
supported in
Java language.
12-14 Exception CLO01 R01 Lecture http://www.studytonigh https://www.youtube.co
Quiz/Test m/watch?v=8px36FWLd
Handling: t.com/java
Questions Ds
Introduction to
concept of
exception
handling in java,
Types of
exceptions
(checked
/unchecked).
Ways of handling
exceptions.
15-16 Collection CLO02 R01 Questio http://www.javatpoint.c https://www.youtube.co
ning Group m/watch?v=8px36FWLd
Classes: om/java-tutorial
Discuss Ds
Iterable & ion
Collection
Interface,
Collection
Interface Methods,
Properties of List
Collection, Array
List v/s linked list,
Page 9 of 23
22CA026 / Advance Java Programming
Course Plan
Array List to
Vector and Vector
to Linked List,
Array List
Traversal, Linked
List Specific
Methods.
17-19 Collection CLO02 Lecture https://www.tutorialspo https://www.youtube.com/watch?v=rz
R01
Group A7UJ-hQn4
Classes: int.com/java/
Discuss
Deque Interface ion
Supporting LIFO
and FIFO, Set
Usages (HashSet
and TreeSet),
Usage of List
Iterator
20-22 AWT CLO03 Questio Quiz/T https://www.udemy.co https://www.youtube.com/watch?v=rz
B01 ning est A7UJ-hQn4
Components: m/java-tutorial/
Questio
Layout ns
Manager:
AWT basics,
AWT hierarchy
introduction,
AWT component
class.
border layout, grid
layout, flow
layout, Box
layout.
23-25 Swing: CLO03 B01 Lecture Quiz/T https://docs.oracle.com/ https://www.youtube.com/watch?v=rz
est A7UJ-hQn4
Introduction, javase/tutorial/
Questio
hierarchy of java ns
swing classes,
JComponent class
methods,
creating frame in
swing.
26-28 JComponent: CLO03 Discuss Quiz/T http://www.studytonigh https://www.youtube.co
B01
ion, est m/watch?v=7v2OnUti2e
JButton, Jlabel, t.com/java
Questio Questio M&pp=ygUMI2phdmFj
JTextField, ning ns b25uZWN0,
https://www.youtube.co
Page 10 of 23
22CA026 / Advance Java Programming
Course Plan
JCheckBox m/watch?v=1vVJPzVza
K8
,JRadioButton,
JComboBox,
JList. AWT
and swing
difference.
29-32 Event handling: CLO03 Lecture Quiz/T http://www.javatpoint.c https://www.youtube.co
B04,B02
, est m/watch?v=7v2OnUti2e
Event Delegation om/java-tutorial
CLO04 Questio M&pp=ygUMI2phdmFj
Model, Event ns b25uZWN0,
https://www.youtube.co
Classes, Source of
m/watch?v=1vVJPzVza
Event and Event K8
Listener
Interfaces,
Adapter classes.
33-36 JDBC CLO04 B02,, B04 Discuss Quiz/T https://www.youtube.co
ion, est m/watch?v=7v2OnUti2e
Connectivity intro https://www.tutorialspo
Questio Questio M&pp=ygUMI2phdmFj
Introduction, ning ns int.com/java/ b25uZWN0,
https://www.youtube.co
working with
m/watch?v=1vVJPzVza
MySQL database, K8
registering the
drivers,
connecting to
database.
40-42 JDBC CLO04 B01 Lecture Quiz/T https://www.udemy.co https://www.youtube.co
est m/watch?v=7v2OnUti2e
Connectivity: m/java-tutorial/
Questio M&pp=ygUMI2phdmFj
Application ns b25uZWN0
Preparing SQL
statement.
Retrieving data
from MySQL
database.
Lab Plan:
Page 11 of 23
22CA026 / Advance Java Programming
Course Plan
Page 12 of 23
22CA026 / Advance Java Programming
Course Plan
Page 13 of 23
22CA026 / Advance Java Programming
Course Plan
Page 14 of 23
22CA026 / Advance Java Programming
Course Plan
Page 15 of 23
22CA026 / Advance Java Programming
Course Plan
Page 16 of 23
22CA026 / Advance Java Programming
Course Plan
values: [3, 7, 9, 2, 5, 5, 8, 5, 6, 3,
4, 7, 3, 1]
We can think of this list as a
sequence of pairs: (3, 7), (9, 2), (5,
5), (8, 5), (6, 3), (4, 7), (3, 1). The
pairs (9, 2), (8, 5), (6, 3), and (3, 1)
are "bad" because the left element
is larger than the right one, so
these pairs should be removed. So
the call of removeBadPairs(list);
would change the list to store the
following element values: [3, 7, 5,
5, 4, 7]
Page 17 of 23
22CA026 / Advance Java Programming
Course Plan
Page 18 of 23
22CA026 / Advance Java Programming
Course Plan
Page 19 of 23
22CA026 / Advance Java Programming
Course Plan
8. Remedial Classes5
Slow Learner Average Learner Fast Learner
•Remedial Classes •Doubt Sessions •Online Quiz
•Encouragement for •Presentations to be delivered •Participation in competitions
improvement using peer by them
tutoring
5 Refer to Annexure
Page 20 of 23
22CA026 / Advance Java Programming
Course Plan
9. Self-Learning6
Assignments to promote self-learning, survey of contents from multiple sources.
Advanced
Topics,
Additional
S.No Reading, CLO POs ALM References/MOOCS
Research
papers and
any
1 Java Server CLO04 PO1,PO4,PO9 Group https://www.udemy.com/course/learn-
pages, Discussion java-se-8-and-prepare-for-the-java-
Enterprise associate-
Java Bean exam/?couponCode=IND21PM
*Lab performance and Internal Viva is a mandatory evaluation taken during the semester. It is considered based on Lab practical file, viva and
written/execution. Two Lab Performances(LP) and one Internal Viva (IV) is to be taken during the semester and the ERP system will automatically pick best
of two lab performances and marks of internal viva for awarding final lab internal marks.
**Out of 2 Sessional Test(ST) the ERP system will automatically pics best of 2 ST’s for awarding marks. ST's to be held as per departmental academic
calendar.
*** As per academic guidelines minimum 75% attendance is required to become eligible for appearing in the End Semester Examination.
6 Refer to Annexure
7
Refer to Annexure
8 Refer to Annexure 2 of NCrF
9 Refer to Annexure
10 Refer to Annexure
11 Refer to Annexure
Page 21 of 23
22CA026 / Advance Java Programming
Course Plan
Subject:
No. of
S.No. Topic(s) Weightage %
Lectures
1-2 Java Basics: 2
5
Introduction to basic concepts of java.
3-5 Constructor and class concept: 3
5
Introduction to constructor, object and class concept in context of java
language.
6-8 Arrays: 3
5
Introduction to concept of array of primitives and objects (one and two
dimensional).
9-11 Inheritance: 3
5
Meaning of inheritance in java and types of inheritances supported in
Java language.
12-14 Exception Handling: 3
5
Introduction to concept of exception handling in java, Types of
exceptions (checked /unchecked). Ways of handling exceptions.
15-17 Collection Classes: 3
20
Iterable& Collection Interface, Collection Interface Methods, Properties of
List Collection, Array List v/s linked list, Array List to Vector and Vector to
Linked List, Array List Traversal, Linked List Specific Methods.
18-20 Collection Classes: 3
20
Deque Interface Supporting LIFO and FIFO, Set Usages (HashSet and
TreeSet), Usage of List Iterator
21-23 AWT Components: 3
5
Layout Manager:
AWT basics, AWT hierarchy introduction, AWT component class.
border layout, grid layout, flow layout, Box layout.
24-26 Swing: 3
10
Introduction, hierarchy of java swing classes, JComponent class methods,
creating frame in swing.
27-29 JComponent: 3
5
JButton, Jlabel, JTextField, JCheckBox ,JRadioButton, JComboBox, JList.
AWT
and swing difference.
30-34 Event handling: 3
5
Event Delegation Model, Event Classes, Source of Event and Event Listener
Interfaces, Adapter classes.
Page 22 of 23
22CA026 / Advance Java Programming