JAVA Lesson Plan 19 20
JAVA Lesson Plan 19 20
Course Code :
Course Title : Object Oriented Programming using Java
Lectures Tutorials Practicals Credits
Course Structure :
3 1 0 3
Course Coordinator : Mrs. L.Bhavya
Team of Instructors : Mr. G. Murali
I. Course Overview
Java programming language was originally developed by Sun Microsystems which was initiated by
James Gosling and released in 1995 as core component of Sun Microsystems' Java platform
(Java 1.0 [J2SE]). The latest release of the Java Standard Edition is Java SE 8.
II. Prerequisite(s):
III. Assessment:
FORMATIVE ASSESMENT
Mid Semester Test I for 20 Marks in first 2 units is
conducted at8 the end of 9th week.
20 Marks
Mid Semester Test II for 20 Marks in last three units is
conducted at the end of the course work.
Mid semester Test Multiple Choice Test in second two and 10 Marks
half Units is conducted for 10 Marks
V. Course Outcomes:
Program Outcomes
a An ability to apply knowledge of computing, mathematical foundations, algorithmic
principles, and computer science and engineering theory in the modeling and design of
computer-based systems to real-world problems (fundamental engineering analysis
skills)
b An ability to design and conduct experiments, as well as to analyze and interpret data
(information retrieval skills)
c An ability to design , implement, and evaluate a computer-based system, process,
component, or program to meet desired needs, within realistic constraints such as
economic, environmental, social, political, health and safety, manufacturability, and
sustainability (Creative Skills)
d An ability to function effectively on multi-disciplinary teams (team work)
e An ability to analyze a problem, identify, formulate and use the appropriate computing
and engineering requirements for obtaining its solution (engineering problem solving
skills)
f An understanding of professional, ethical, legal, security and social issues and
responsibilities (professional integrity)
g An ability to communicate effectively both in writing and orally (speaking / writing
skills)
h The broad education necessary to analyze the local and global impact of computing
and engineering solutions on individuals, organizations, and society (engineering
impact assessment skills)
i Recognition of the need for, and an ability to engage in continuing professional
development and life-long learning (continuing education awareness)
j A Knowledge of contemporary issues (social awareness)
k An ability to use current techniques, skills, and tools necessary for computing and
engineering practice (practical engineering analysis skills)
l An ability to apply design and development principles in the construction of software
and hardware systems of varying complexity (software hardware interface)
m An ability to recognize the importance of professional development by pursuing
postgraduate studies or face competitive examinations that offer challenging and
rewarding careers in computing (successful career and immediate employment).
VII. Syllabus:
Regulation –R15
UNIT I
The History and Evolution of Java: Java’s Lineage, The Creation of Java, How Java Changed the
Internet, Java’s Magic: The Bytecode, Servlets: Java on the Server Side, The Java Buzzwords, The
Evolution of Java, Java SE 8, A Culture of Innovation.
An Overview of Java: Object-Oriented Programming, A First Simple Program, A Second Short Program,
Two Control Statements, Using Blocks of Code, Lexical Issues, The Java Class Libraries.
UNIT II
Data Types, Variables, and Arrays: Java Is a Strongly Typed Language, The Primitive Types, Integers,
Floating-Point Types, Characters, Booleans, A Closer Look at Literals, Variables, Type Conversion and
Casting, Automatic Type Promotion in Expressions, Arrays, A Few Words About Strings, A Note to
C/C++ Programmers About Pointers.
Operators: Arithmetic Operators, The Bitwise Operators, Relational Operators, Boolean Logical
Operators, The Assignment Operator, The ? Operator, Operator Precedence, Using Parentheses.
UNIT III
Introducing Classes: Class Fundamentals, Declaring Objects, Assigning Object Reference Variables,
Introducing Methods, Constructors, The this Keyword, The finalize( ) Method, A Stack Class.
A Closer Look at Methods and Classes: Overloading Methods, Using Objects as Parameters, A Closer
Look at Argument Passing, Returning Objects, Recursion, Introducing Access Control, Understanding
static, Introducing final, Arrays Revisited, Introducing Nested and Inner Classes, Exploring the String
Class, Using Command-Line Arguments, Varargs: Variable-Length Arguments.
UNIT IV
Inheritance: Inheritance Basics, Using super, Creating a Multilevel Hierarchy, When Constructors Are
Executed, Method Overriding, Dynamic Method Dispatch, Using Abstract Classes, Using final with
Inheritance, The Object Class.
Packages and interfaces: Packages, Access Protection, Importing Packages, Interfaces, Default Interface
Methods, Use static Methods in an Interface, Final Thoughts on Packages and Interfaces.
UNIT V
Multithreaded Programming: The Java Thread Model, The Main Thread, Creating a Thread, Creating
Multiple Threads, Using isAlive( ) and join( ), Thread Priorities, Synchronization, Interthread
Communication, Suspending, Resuming, and Stopping Threads. Obtaining A Thread’s State, Using
Multithreading.
Text Books:
1. Java The Complete Reference 9th edition, Herbert Schildt, Mc Graw Hill Education, 2014.
2. Programming with Java, E. Balagurusamy.
Reference Books:
Others:
1. Software Engineering Foundation, Trainee Guide
IX. Course Plan:
Practical sessions
18/7/19, Programming Techniques / Program Brief Discussion about how to analysis O2
19/7/19 thinking program
Unit – II
23/7/19, Data Types, Variables Java Is a Strongly Typed Language, The T1:3
25/7/19, Primitive Types, Integers, Floating-Point T2:4:4-7
26/7/19 Types, Characters, Booleans, A Closer Look R1:3:2
at Literals, Variables, Type Conversion and
Casting, Automatic Type Promotion in
Expressions
Practical sessions
30/7/19, Operators Arithmetic Operators, The Bitwise Operators, T1:4
1/8/19 Relational Operators, Boolean Logical T2:5:1-9
Operators, The Assignment Operator, The ? R1:3:3
Operator, Operator Precedence, Using
Parentheses.
Practical sessions
2/8/19, Control Statements Java’s Selection Statements, Iteration T1:5
6/8/19 Statements, Jump Statements. R1:4
Practical sessions
8/8/19, Arrays and Strings Arrays, A Few Words About Strings, A Note T1:3:11,12,13
9/8/19 to C/C++ Programmers About Pointers. T2: 9:1-5
R1:6
Unit – III
13/8/19, Classes, Objects and Class Fundamentals, Declaring Objects, T1:6:1-4
16/8/19 Methods Assigning Object Reference Variables, T2:8:1-6
Introducing Methods O1:2
Practical sessions
27/8/19 Constructors, This and Constructors, The this Keyword, The finalize T1:6:5-8
Finalize ( ) Method, A Stack Class. R1:7:4-7
Practical sessions
29/8/19, Method overloading and Argument Overloading Methods, Using Objects as T1:7: 1-4
30/8/19 Passing Parameters, A Closer Look at Argument
Passing, Returning Objects
Practical sessions
3/9/19 Recursion, static and final Recursion, Introducing Access Control, T1:7:5-8
Understanding static, Introducing final.
Practical sessions
5/9/19, Classes Arrays Revisited, Introducing Nested and T1:7:9-13
6/9/19 Inner Classes, Exploring the String Class, R1:8:4
Using Command-Line Arguments, Varargs:
Variable-Length Arguments.
Practical sessions
Unit – IV
12/9/19, Inheritance Inheritance Basics, Using super, Creating a T1:8
13/9/19 Multilevel Hierarchy, When Constructors Are R1:9
Executed, Method Overriding, Dynamic O1:5
Method Dispatch, Using Abstract Classes,
Using final with Inheritance, The Object
Class.
Practical sessions
17/9/19, Packages Packages, Access Protection, Importing T1:9:1-3
19/9/19 Packages R1:13
O1:4
Practical sessions
20/9/19 Interface Interfaces, Default Interface Methods, Use T1:9:4-7
static Methods in an Interface, Final R1:12
Thoughts on Packages and Interfaces. O1:10
Practical sessions
24/9/19, Introduction to Exception Handling Exception-Handling Fundamentals, T1:10:1-7
26/9/19 R1:14
Exception Types, Uncaught Exceptions,
O1:13
Using try and catch, Multiple catch Clauses,
Nested try Statements, throw, throws, finally,
Java’s Built-in Exceptions
Practical sessions
27/9/19, Exception Handling Creating Your Own Exception Subclasses, T1:10:8-11
1/10/19 Chained Exceptions, Three Recently Added R1:14
Exception Features, Using Exceptions. O1:13
Practical sessions
Unit-V
3/10/19, Introduction to Threads The Java Thread Model, The Main Thread, T1:11:1-3
4/10/19 Creating a Thread R1:20:1
Practical sessions
10/10/19, Multithreaded Programming Creating Multiple Threads, Using isAlive ( ) T1:11:4-11
11/10/19, and join( ), Thread Priorities, R1:20
15/10/19 Synchronization, Interthread Communication, O1:15
Suspending, Resuming, and Stopping
Threads. Obtaining A Thread’s State, Using
Multithreading.
Practical sessions
17/10/19, Enumerations, Autoboxing, and Enumerations, Type Wrappers, Autoboxing, T1:12
18/10/19, Annotations (Metadata) Annotations (Metadata), Type Annotations,
22/10/19 Repeating Annotations.
Practical sessions
24/10/19 Revision part
&
25/10/19
X. Mapping course outcomes leading to the achievement of the program outcomes:
By covering the syllabus a student can understand the designing of algorithm and flowcharts. Student is
able to develop applications using C Program Constructs.
By mapping CO-1 to the PO’s C, E & L which are related to the course CO1: The student is able to analyze
and Implement Problems
By mapping CO-2 to the PO’s A, E, which are related to the course CO2: The student is able to efficient
programs
By mapping CO-3 to the PO’s B & D which are related to the course CO3: The student is able to create
user-friendly interfaces and get the result.