Scheme and Syllabus upto 4th Year VR20 CSE
20ES3102
JAVA PROGRAMMING
Course Category: Engineering Credits: 3
Science
Course Type: Theory Lecture -Tutorial-Practice: 3-0-0
Prerequisites: - Continuous Evaluation: 30
Semester end Evaluation: 70
Total Marks: 100
COURSE OUTCOMES BTL POI
Upon successful completion of the course, the student will be able to:
1.7.1,2.5.1
Understand the basic concepts of object oriented K2
CO1 ,2.5.2,2.7.1
programming.
1.7.1,2.5.1,2.5.2,2.6.3,
Apply multiple inheritance through interfaces for K3
CO2 2.7.1,3.5.1,3.8.2
a given application.
1.7.1,2.5.1,
Apply exceptions, thread capabilities and handling K3 2.5.2,2.6.3,2.6.4,
CO3 files on a given application.
3.5.1,3.8.2
1.7.1,2.5.1,
Apply functional programming and Collections K3 2.5.2,2.6.3,2.6.4,
CO4 framework for a given application. 3.5.1,3.6.2,3.8.2,5.4.2
Contribution of Course Outcomes towards achievement of Program
Outcomes (1 – Low, 2 - Medium, 3 – High)
PO PO PO PO PO PO PO PO PO PO PO PO PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 1 2
CO1 2 3
CO2 2 2 3 2 2
CO3 2 2 3 2 2
CO4 2 3 2 2 2
VRSEC 74
Scheme and Syllabus upto 4th Year VR20 CSE
COURSE CONTENT
UNIT I
Introduction, The History and Evolution of Java: Java history and evolution,
Java features, Java’s Magic: Byte Code, How Java differs from C and C++.
An Overview of Java: Object Oriented Programming: Two paradigms, Principles
of OOP, A First simple Program and Control statements.
Data Types, Variables and Arrays: Java keywords, Primitive types, Integers,
Floating-Point Types, Characters, Booleans, Variables, Operators, Type
Conversion, Casting and Arrays.
Introducing Classes and Objects: Class fundamentals, declaring objects,
assigning object reference variables, introducing methods, constructors, this
keyword, Garbage collection, overloading methods, using objects as parameters,
returning objects, static and final keywords, nested and inner classes.
UNIT II
String Handling: The String Constructors, String Buffer Class, String Tokenizer
class.
Inheritance: Inheritance basics, using super, multilevel hierarchy, method
overriding, dynamic method dispatch, using abstract classes, final with inheritance.
Packages & Interfaces: Defining a package, finding package and CLASSPATH.
Access protection, importing packages, Defining an interface, implementing
interfaces, nested interfaces, applying interfaces, variables in interfaces.
UNIT III
Exception handling: Exception handling fundamentals, exception types, uncaught
exceptions, using try and catch, multiple catch clauses, throw, throws, finally,
creating your own exception subclasses.
I/O streams: Byte Streams- InputStream, OutputStream, FileInputStream,
FileOutputStream, Character Streams- Reader, Writer, FileReader, FileWriter.
Multithread Programming: The Java Thread Model, Creating a thread:
Implementing Runnable, Extending Thread, creating multiple threads, Thread
Priorities, Synchronization: Using Synchronized methods, The synchronized
VRSEC 75
Scheme and Syllabus upto 4th Year VR20 CSE
Statement.
UNIT IV
Pragmatic Functional Programming using Lambdas: Introduction to
Functional programming, Functional Programming concepts and terminology,
Functional Interfaces, Working with Lambda Expressions and Method References.
Collections Framework: Collections overview, Collection interfaces: Collection,
List, and Set. Collection Classes: ArrayList, LinkedList, HashSet.Map
Classes:HashMap, TreeMapJ
The Stream API: Stream basics, Reduction operations, Using parallel streams,
Mapping, Collecting, Iterators and Streams.
TEXT BOOKS
[1] Herbert Schildt, “Java The Complete Reference”, Eleventh Edition, Oracle
Press, . 2019.
REFERENCE BOOKS
[1] Herbert Schildt, Dale Skrien, “Java Fundamentals A Comprehension
Introduction”, Special Indian Edition, McGraw-Hill Education India Pvt. Ltd,
2017.
[2] E Balaguruswamy, "Programming with Java", 4th Edition, Mc Graw Hill ,
2020.
[3] Paul J. Dietel and Dr.Harvey M. Deitel, “Java How to Program”, Eleventh
Edition, Deitel & Associates, Inc.l , 2018.
[4] Timothy Budd, “Understanding Object Oriented Programming with Java “,
Updated edition,Pearson Education, 2013.
[5] Kathy Sierra & Bert Bates, "Head First Java", 2nd Edition, Oreilly.
E-RESOURCES AND OTHER DIGITAL MATERIAL
[1] Prof. Debasis Samanta. (14th,July, 2021), Department of Computer Science &
Engineering, I.I.T.,Kharagpur, Swayam, NPTEL.
https://onlinecourses.nptel.ac.in/noc21_cs03/preview.
[2] Evan Jones, Adam Marcus,Eugene Wu "Introduction to Programming in
Java", MIT OpenCourseWare, Massachusetts Institute of Technology, May
28, 2021. https://ocw.mit.edu › courses
[3] Prof. Owen Astrachan, "Object Oriented Programming in Java", Duke
University, 21st May 2021. coursera.org
VRSEC 76
Scheme and Syllabus upto 4th Year VR20 CSE
https://www.coursera.org/specializations/object-oriented-programming
[4] Dheeru Mundluru, "Java In-Depth: Become a Complete Java Engineer",
Udemy, 14th May 2021.
https://www.udemy.com/course/java-in-depth-become-a-complete-java-
engineer/
[5] Prof. Olufisayo Omojokun,"Introduction to Object-Oriented Programming
with Java I: Foundations and Syntax Basics", Georgia Institute of
Technology, edX, May 2021.
https://www.edx.org/course/introduction-to-java-programming-i-
foundations-and-syntax- basics
VRSEC 77