BCS306A Module 2
BCS306A Module 2
BCS306A Module 2
Module 2
Objects and Classes in Java
In this page, we will learn about Java objects and classes. In object-oriented programming
technique, we design a program using objects and classes.
An object in Java is the physical as well as a logical entity, whereas, a class in Java is a logical
entity only.
An entity that has state and behavior is known as an object e.g., chair, bike, marker, pen, table,
car, etc. It can be physical or logical (tangible and intangible). The example of an intangible
object is the banking system.
o Behavior: represents the behavior (functionality) of an object such as deposit, withdraw, etc.
o Identity: An object identity is typically implemented via a unique ID. The value of the ID is not
visible to the external user. However, it is used internally by the JVM to identify each object
uniquely.
INFORMATION SCIENCE and ENGINEERING
For Example, Pen is an object. Its name is Reynolds; color is white, known as its state. It is used
to write, so writing is its behavior.
An object is an instance of a class. A class is a template or blueprint from which objects are
created. So, an object is the instance (result) of a class.
Object Definitions:
o Fields
o Methods
o Constructors
o Blocks
method;
}
INFORMATION SCIENCE and ENGINEERING
Method in Java
In Java, a method is like a function which is used to expose the behavior of an object.
Advantage of Method
o Code Reusability
o Code Optimization
File: Student.java
class Student{
//defining fields
Output:
We can have multiple classes in different Java files or single Java file. If you define multiple
classes in a single Java source file, it is a good idea to save the file name with the class name
which has main() method.
File: TestStudent1.java
//another class
class Student{
int id;
String name;
class TestStudent1{
INFORMATION SCIENCE and ENGINEERING
System.out.println(s1.name);
Output:
1. By reference variable
2. By method
3. By constructor
File: TestStudent2.java
class Student{
int id;
String name;
class TestStudent2{
s1=new Student();
INFORMATION SCIENCE and ENGINEERING
s1.id=101;
s1.name="Sonoo";
Output:
101 Sonoo
We can also create multiple objects and store information in it through reference variable.
File: TestStudent3.java
class Student{
int id;
String name;
class TestStudent3{
//Creating objects
//Initializing objects
s1.id=101;
s1.name="Sonoo";
s2.id=102;
s2.name="Amit";
"+s1.name); System.out.println(s2.id+"
"+s2.name);
}
INFORMATION SCIENCE and ENGINEERING
Output:
Sonoo
Amit
2) Object and Class Example: Initialization
through method
In this example, we are creating the two objects of Student class and initializing the value to
these objects by invoking the insertRecord method. Here, we are displaying the state (data) of the
objects by invoking the displayInformation() method.
File: TestStudent4.java
name=n;
class TestStudent4{
s1=new Student();
s1.insertRecord(111,"Karan");
s2.insertRecord(222,"Aryan");
s1.displayInformation(); s2.displayInformation();
}
INFORMATION SCIENCE and ENGINEERING
Output:
111 Karan
222 Aryan
As you can see in the above figure, object gets the memory in heap memory area. The reference variable refers to
3) Object and Class Example: Initialization
through a constructor
We will learn about constructors in Java later.
File: TestEmployee.java
class Employee{
int id;
String name;
float salary;
name=n;
salary=s;
Employee();
INFORMATION SCIENCE and ENGINEERING
e1.insert(101,"ajeet",45000);
e2.insert(102,"irfan",25000);
e3.insert(103,"nakul",55000);
e1.display();
e2.display();
e3.display();
Output:
File: TestRectangle1.java
class Rectangle{
int length;
int width;
{ length=l;
width=w;
void calculateArea(){System.out.println(length*width);}
class TestRectangle1{
Rectangle();
INFORMATION SCIENCE and ENGINEERING
r2.insert(3,15);
r1.calculateArea();
r2.calculateArea();
Output:
55
o By new keyword
o By newInstance() method
o By clone() method
o By deserialization
Anonymous object
Anonymous simply means nameless. An object which has no reference is known as an
anonymous object. It can be used at the time of object creation only.
If you have to use an object only once, an anonymous object is a good approach. For example:
new Calculation().fact(5);
class Calculation{
fact=1;
for(int i=1;i<=n;i++)
{ fact=fact*i;
System.out.println("factorial is "+fact);
Output:
Factorial is 120
class Rectangle{
int length;
int width;
{ length=l;
width=w;
void calculateArea(){System.out.println(length*width);}
class TestRectangle2{
r2.insert(3,15);
r1.calculateArea();
r2.calculateArea();
Output:
55
File: TestAccount.java
acc_no; String
name=n;
amount=amt;
//deposit method
System.out.println(amt+" deposited");
//withdraw method
{ System.out.println("Insufficient Balance");
}else{ amount=amount-
amt;
System.out.println(amt+" withdrawn");
class TestAccount{
a1=new Account();
a1.insert(832345,"Ankit",1000); a1.display();
a1.checkBalance();
a1.deposit(40000);
a1.checkBalance();
a1.withdraw(15000);
a1.checkBalance();
}}
Output:
40000.0 deposited