You are on page 1of 9

17CS2605D

FUNDAMENTALS OF JAVA PROGRAMMING

Course Category: Open Elective Credits: 3


Course Type: Theory Lecture -Tutorial-Practice: 3 - 0 -0
Prerequisites: Continuous Evaluation: 30
Semester end Evaluation: 70
Total Marks: 100

COURSE OUTCOMES:

Upon successful completion of the course, the student will be able to:
Cognitive Levels(K): K1-Remember;K2-Understand; K3-Apply; K4-
Analyze; K5-Evaluate; K6-Create
CO1
Understand the concepts of object oriented programming.
CO2
Implement multiple inheritance through interfaces.
CO3
Apply exception, thread capabilities to a given application.
CO4
Apply Collections framework to a given application.
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 3 1
CO2 2 1 1 1 1
CO3 2 2 1 2
CO4 2 3 2 2 3 3
COURSE CONTENT

UNIT I :

Fundamentals of Object Oriented Programming: Introduction, Object oriented


paradigm, Basic concepts of Object Oriented Programming, Benefits of OOP, and
Applications of OOP.

Introduction to Java: Java history, java features, how java differs from C and C++.
Data Types, variables and arrays, Java keywords, Primitive types, Integers, Floating-
Point Types, Characters, Booleans, Variables, Type Conversion, casting and Arrays.

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: Defining a package, finding package and CLASSPATH. Access
protection, importing packages.

UNIT III

Interfaces:Defining an interface, implementing interfaces, nested interfaces,


applying interfaces, variables in interfaces.
Exception handling: Exception handling fundamentals, exception types, uncaught
exceptions, using try and catch, multiple catch clauses, throw, throws, finally,
creating your own exception subclasses.

Stream Classes: Byte Streams- InputStream, OutputStream, FileInputStream,


FileOutputStream, Character Streams- Reader, Writer, FileReader, FileWriter.

UNIT – IV

Multithread Programming: The Java Thread Model, Creating a thread:


Implementing Runnable, Extending Thread, creating multiple threads, Thread
Priorities,Synchronization: Using Synchronized methods, The synchronized
Statement.

Collections Framework: Collections overview Collection interfaces: Collection,


List, and Set.

Collection Classes: ArrayList, LinkedList, HashSet.Map Classes: HashMap,


TreeMap.

TEXT BOOKS:

[1] Herbert Schildt, “Java The Complete Reference”, 9th Edition, McGraw-Hill
Education, New Delhi, 2011. [ UNIT – I ( Chapter – 2,3,4) , UNIT – II , III )

[2] E Balagurusamy, “Programming with Java: A Primer”, 4th Edition, Tata


McGraw Hill Education Pvt Ltd., 2011. ( UNIT – I, Chapter – 1)

REFERENCE BOOKS

[1] Herbert Schildt, Dale Skrien, “Java Fundamentals A Comprehension


Introduction”, Special Indian Edition, McGraw-Hill Education India Pvt. Ltd, 2013.
[2] Paul J. Dietel and Dr.Harvey M. Deitel, “Java How to Program”, 9th Edition,
Prentice-Hall, Pearson Education, 2011.

[3] Timothy Budd, “Understanding Object Oriented Programming with Java “,


Updated edition, Pearson Education, 2013.

E-RESOURCES AND OTHER DIGITAL MATERIAL

[1] Prof. I. Sengupta. (14th , May, 2015), Department of Computer Science &
Engineering, I.I.T.,Kharagpur, “Internet Technologies", NPTEL.
http://nptel.ac.in/video.php?subjectId=106105084

[2] Prof. Shane P. (14th , May , 2015), Department of Computer Science &
Engineering,, NPTEL Videos,
http://www.nptelvideos.com/video.php?id=1461&c=15

Basis of distinction C C++

It is an Object-
It is a Procedural Oriented
Programming type
Oriented language. Programming
language.
C language follows
C++ follow bottom-
Top Down
Approach up programming
programming
approach.
approach
The file extension of
The file extension of
File extension a c+ + program
a C program is .c
language is.cpp
In C programming In C++
language, a big programming
program code is language, a big
Program division
divided into small program code is
pieces which is divided into Objects
called functions. and Classes.
Basis of distinction C C++

Structure in C++
Structure in C not provides the feature
provide the feature of declaring a
Structure
of function function as a
declaration. member function of
the structure.
It does not allow It supports inline
Inline function
inline function. function.
In C scan and printf In C++ cin» and
are used for the cout« are given for
Standard I/O operations
standard input and standard input and
output output operations.
Data is secure, so it
can't be accessed by
In C language the external functions.
Data Security
data is not secured. (Using
Encapsulation
concept of OOPs)
C is an older
programming
language that is
described as Hands-
C++ is an extension
on. In this language,
language of C. It
you must tell the
Ease of Coding allows for the highly
program to do
controlled object-
everything.
oriented code.
Moreover, this
language will let
you do almost
anything.
C is not compatible C++ is compatible
Compatibility with other
with another with the other
languages
language. generic
Basis of distinction C C++

programming
languages.
C++ supports both
C supports only
Pointer pointers and
Pointers.
references.
In C, the variable C++ allows you to
should be defined at declare variables
Variable
the beginning of the anywhere in the
program. function.
C++ emphasizes the
C focuses on the
objects and not the
steps or procedures
Point of Focus steps or procedures.
that are followed to
It has higher
solve a problem.
abstraction level.
C does not allow C++ allows you to
Function Overloading you to use function use function
overloading. overloading.
C language does not
allows you to
declare String or C++ supports String
Data Types Boolean data types. and Boolean data
It supports built-in types.
and primitive data
types.
C++ supports
C does not support
Exception handling.
Exception Handling.
Moreover, this
Exception Handling However, it can be
operation can be
performed using
performed using try
some workarounds.
and catch block.
Allow functions with
Does not allows
Functions default
functions with
arrangements.
Basis of distinction C C++

default
arrangements
It is absent in C It is present in the
Namespace
language. C++ language.
Originally developed
Free-format
from the C
Source Code program source
programming
code.
language.
C++ is a superset of
C is a subset of C. C++ can run most
Relationship C++. It cannot run of C code while C
C++ code. cannot run C++
code.
Function-driven Object-driven
Driven by
language language
Focuses on method Focuses on data
Focus or process instead of instead of method or
data. procedure.
Does not support Supports
encapsulation. As encapsulation. Data
Encapsulation Data and functions and functions are
are separate and free encapsulated
entities. together as an object.
C does not support
Encapsulation hides
information hiding.
the data. So that data
In this language,
Information hiding structures and
data are free entities
operators are used as
and can be changed
per intention.
outside code.
C provide malloc() C++ provides a new
Memory management and calloc() operator for this
functions for purpose.
Basis of distinction C C++

dynamic memory
allocation.
Supports built-in &
Supports built-in
Data Types user-defined data
data types.
types.
Allows Multiple Multiple Declaration
Global Variables Declaration of of global variables
global variables. are not allowed.
The mapping
The mapping between Data and
between Data and Function can be
Concept of Mapping
Function is very easily established
complicated. using "Classes and
Objects."
Inheritance is
Inheritance is not
Inheritance possible in C++
supported C
language.
C++ uses iosteam.h
C used stdio.h
Default header file as default header
header file.
file.
The concept of The concept of
Virtual function virtual Functions are virtual Function is
present in C. not used in C++.
Contain 32 Contains 52
Keywords
keywords. keywords.
The concept of
polymorphism is
used in C++.
In C. Polymorphism
Polymorphism Polymorphism is one
is not possible
of the most
Important Features
of OOPS.
Basis of distinction C C++

C language offers C++ supports Qt


GUI programming GTK tool for GUI tools for
programming GUIprogramming

You might also like