Object Oriented Programming With Java
Object Oriented Programming With Java
Unit-1
Machine Code
Structured
Procedural
Objects are the basic run-time entities in an object-oriented system. They may
represent a person, a place, a bank account, a table of data or any item that the
program must handle.The fundamental idea behind object oriented approach is to
combine both data and function into a single unit and these units are called objects.
The term objects means a combination of data and program that represent some
real word entity.
When a program executed, the object interact by sending messages to one another.
Each object contain data, and code to manipulate the data.
2. Class
A group of objects that share common properties for data part and some program
part are collectively called as class. In C ++ a class is a new data type that contains
member variables and member functions that operate on the variables.
The entire set of data and code of an object can be made a user-defined data type
with the help of a class. Objects are variable of the type class. Once a class has
been defined, we can create any number of objects belonging to that class.
<classname><objectname>;
employee manager;
will create an object manager belonging to the class employee.
3. Encapsulation
4. Data Abstraction
Abstraction refers to the act of representing essential features without including the
back ground details or explanation. Classes use the concept of abstraction and are
defined as a list of attributes such as size, weight, cost and functions to operate on
these attributes. They encapsulate all essential properties of the object that are to be
created. The attributes are called as data members as they hold data and the
functions which operate on these data are called as member functions.
Class use the concept of data abstraction so they are called abstract data type
(ADT).
5. Inheritance
Inheritance is the mechanism by which one class can inherit the properties of
another. It allows a hierarchy of classes to be build, moving from the most general
to the most specific. When one class is inherited by another, the class that is
inherited is called the base class. The inheriting class is called the derived class. In
general, the process of inheritance begins with the definition of a base class. The
base class defines all qualities that will be common to any derived class. . In OOPs,
the concept of inheritance provides the idea of reusability. In essence, the base
class represent the most general description of a set of traits. The derived class
inherits those general traits and adds properties that are specific to that class.
6. Polymorphism
Polymorphism comes from the Greek words “poly” and “morphism”. “poly”
means many and “morphism” means form i.e.. many forms. Polymorphism means
the ability to take more than one form. For example, an operation have different
behavior in different instances. The behavior depends upon the type of the data
used in the operation.
1) Function overloading
2) Operator overloading
It is able to express the operation of addition by a single operater say ‘+’. When
this is possible you use the expression x + y to denote the sum of x and y, for many
different types of x and y; integers , float and complex no. You can even define the
+ operation for two strings to mean the concatenation of the strings.
7. Dynamic Binding
Binding refers to the linking of a procedure call to the code to the executed in
response to the call. Dynamic binding means the code associated with a given
procedure call is not known until the time of the call at run-time. It is associated
with a polymorphic reference depends upon the dynamic type of that reference.
8. Message Passing
An object oriented program consists of a set of objects that communicate with each
other.
A message for an object is a request for execution of a procedure and therefore will
invoke a function (procedure) in the receiving object that generates the desired
result. Message passing involves specifying the name of the object, the name of the
function (message) and information to be sent.
History Of Java:
The history of Java is very interesting. Java was originally designed for interactive
television, but it was too advanced technology for the digital cable television
industry at the time. The history of Java starts with the Green Team. Java team
members (also known as Green Team), initiated this project to develop a language
for digital devices such as set-top boxes, televisions, etc. However, it was best
suited for internet programming. Later, Java technology was incorporated by
Netscape.
The principles for creating Java programming were "Simple, Robust, Portable,
Platform-independent, Secured, High Performance, Multithreaded, Architecture
Neutral, Object-Oriented, Interpreted, and Dynamic". Java was developed by
James Gosling, who is known as the father of Java, in 1995. James Gosling and
his team members started the project in the early '90s.
Java is very easy to learn, and its syntax is simple, clean and easy to understand.
According to Sun Microsystem, Java language is a simple programming language
because:
o Java syntax is based on C++ (so easier for programmers to learn it after C+
+).
o Java has removed many complicated and rarely-used features, for example,
explicit pointers, operator overloading, etc.
o There is no need to remove unreferenced objects because there is an
Automatic Garbage Collection in Java.
Object-oriented
1. Object
2. Class
3. Inheritance
4. Polymorphism
5. Abstraction
6. Encapsulation
Platform Independent
The Java platform differs from most other platforms in the sense that it is a
software-based platform that runs on top of other hardware-based platforms. It has
two components:
1. Runtime Environment
2. API(Application Programming Interface)
Java code can be executed on multiple platforms, for example, Windows, Linux,
Sun Solaris, Mac/OS, etc. Java code is compiled by the compiler and converted
into bytecode. This bytecode is a platform-independent code because it can be run
on multiple platforms, i.e., Write Once and Run Anywhere (WORA).
Secured
Java is best known for its security. With Java, we can develop virus-free systems.
Java is secured because:
o No explicit pointer
o Java Programs run inside a virtual machine sandbox
Java language provides these securities by default. Some security can also be
provided by an application developer explicitly through SSL, JAAS,
Cryptography, etc.
Robust
Architecture-neutral
Portable
Java is portable because it facilitates you to carry the Java bytecode to any
platform. It doesn't require any implementation.
High-performance
Distributed
Dynamic