0% found this document useful (0 votes)
2 views

2 Java- Objects and Classes in Java

The document explains the concepts of objects and classes in Java, highlighting that an object is an instance of a class and has state, behavior, and identity. It details how to declare classes, create objects, and initialize them through various methods, including reference variables, methods, and constructors. Additionally, it covers access specifiers in Java, which determine the accessibility of classes, fields, and methods.

Uploaded by

agarwalshikhaaa
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

2 Java- Objects and Classes in Java

The document explains the concepts of objects and classes in Java, highlighting that an object is an instance of a class and has state, behavior, and identity. It details how to declare classes, create objects, and initialize them through various methods, including reference variables, methods, and constructors. Additionally, it covers access specifiers in Java, which determine the accessibility of classes, fields, and methods.

Uploaded by

agarwalshikhaaa
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

Objects and Classes in Java

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.

What is an object in Java?


An entity that has state and behaviour is known as an object. It can be physical or logical
(tangible and intangible).

An object has three characteristics:

 State: represents the data (value) of an object.


 Behaviour: represents the functionality of an object such as deposit, withdraw, etc.
 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.

For Example, Pen is an object. Its name is Reynolds; colour is white, known as its state. It is
used to write, so writing is its behaviour.

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.

What is a class in Java?

A class is a group of objects which have common properties. It is a template or blueprint


from which objects are created. It is a logical entity. It can't be physical.

A class in Java can contain:

 Fields/ variables
 Methods
 Constructors
 Blocks
 Nested class and interface

Syntax to declare a class:


class <class_name>
{
field;
method;
}
Instance variable in Java: A variable which is created inside the class but outside the method
is known as an instance variable. Instance variable doesn't get memory at compile time. It
gets memory at runtime when an object or instance is created. That is why it is known as an
instance variable.

Method in Java- In Java, a method is like a function which is used to expose the behaviour of
an object.

new keyword in Java- The new keyword is used to allocate memory at runtime. All objects
get memory in Heap memory area.

Object and Class Example: main within the class

In this example, we have created a Student class which has two data members id and name.
We are creating the object of the Student class by new keyword and printing the object's
value.

Here, we are creating a main() method inside the class.

1. //Java Program to illustrate how to define a class and fields


2. //Defining a Student class.
3. class Student
4. {
5. //defining fields
6. int id;//field or data member or instance variable or member variable
7. String name;
8. //creating main method inside the Student class
9. public static void main(String args[]){
10. //Creating an object or instance
11. Student s1= new Student(); //creating an object of Student
12. //Printing values of the object
13. System.out.println(s1.id);//accessing member through reference variable
14. System.out.println(s1.name);
15. }
16. }

Output:

0
Null

Object and Class Example: main outside the class

In real time development, we create classes and use it from another class. It is a better
approach than previous one. Let's see a simple example, where we are having main() method
in another class.
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.

1. //Java Program to demonstrate having the main method in


2. //another class
3. //Creating Student class.
4. class Student{
5. int id;
6. String name;
7. }
8. //Creating another class TestStudent1 which contains the main method
9. class TestStudent1{
10. public static void main(String args[]){
11. Student s1=new Student();
12. System.out.println(s1.id);
13. System.out.println(s1.name);
14. }
15. }

Output:

0
Null

3 Ways to initialize object

There are 3 ways to initialize object in Java.

1. By reference variable
2. By method
3. By constructor

1) Object and Class Example: Initialization through reference

Initializing an object means storing data into the object. Let's see a simple example where we
are going to initialize the object through a reference variable.

1. class Student{
2. int id;
3. String name;
4. }
5.
6. class TestStudent2{
7. public static void main(String args[]){
8. Student s1=new Student();
9. s1.id=101;
10. s1.name="Sonoo";
11. System.out.println(s1.id+" "+s1.name);//printing members with a white space
12. }
13. }

Output:

101 Sonoo

We can also create multiple objects and store information in it through reference variable.

1. class Student{
2. int id;
3. String name;
4. }
5. class TestStudent3{
6. public static void main(String args[]){
7. //Creating objects
8. Student s1=new Student();
9. Student s2=new Student();
10. //Initializing objects
11. s1.id=101;
12. s1.name="Sonoo";
13. s2.id=102;
14. s2.name="Amit";
15. //Printing data
16. System.out.println(s1.id+" "+s1.name);
17. System.out.println(s2.id+" "+s2.name);
18. }
19. }

Output:

101 Sonoo
102 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 data of the
objects by invoking the displayInformation() method.

1. class Student{
2. private int id;
3. private String name;
4. void insertRecord(int i, String n){
5. id=i;
6. name=n;
7. }
8. void displayInformation(){System.out.println(id+" "+name);}
9. }
10. class TestStudent4{
11. public static void main(String args[]){
12. Student s1=new Student();
13. Student s2=new Student();
14. s1.insertRecord(111,"Karan");
15. s2.insertRecord(222,"Aryan");
16. s1.displayInformation();
17. s2.displayInformation();
18. }
19. }

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 the object allocated in the heap memory area. Here, s1 and s2
both are reference variables that refer to the objects allocated in memory.

3) Object and Class Example: Initialization through a constructor

One of the important tasks that constructor performs is initialization of objects but
constructor can perform other important tasks too other than initializing objects.

We’ll discuss about this important topic later.

Object and Class: Another Example- Rectangle

1. class Rectangle{
2. int length;
3. int width;
4. void insert(int l, int w){
5. length=l;
6. width=w;
7. }
8. void calculateArea(){System.out.println(length*width);}
9. }
10. class TestRectangle1{
11. public static void main(String args[]){
12. Rectangle r1=new Rectangle();
13. Rectangle r2=new Rectangle();
14. r1.insert(11,5);
15. r2.insert(3,15);
16. r1.calculateArea();
17. r2.calculateArea();
18. }
19. }

Output:

55
45

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:

1. new Calculation();//anonymous object

Calling method through a reference:

1. Calculation c=new Calculation();


2. c.fact(5);

Calling method through an anonymous object

1. new Calculation().fact(5);

Let's see the full example of an anonymous object in Java.

1. class Calculation{
2. void fact(int n){
3. int fact=1;
4. for(int i=1;i<=n;i++){
5. fact=fact*i;
6. }
7. System.out.println("factorial is "+fact);
8. }
9. public static void main(String args[]){
10. new Calculation().fact(5);//calling method with anonymous object
11. }
12. }

Output:

Factorial is 120

Access Specifiers

The access modifiers in Java specifies the accessibility or scope of a field, method or class.
We can change the access level of fields, methods, and class by applying the access modifier
on it.

There are four types of Java access modifiers:

1. Private: The access level of a private modifier is only within the class. It cannot be
accessed from outside the class.
2. Protected: The access level of a protected modifier is within the package and outside
the package through child class. If you do not make the child class, it cannot be
accessed from outside the package.
3. Public: The access level of a public modifier is everywhere. It can be accessed from
within the class, outside the class, within the package and outside the package.
4. Default: The access level of a default modifier is only within the package. It cannot
be accessed from outside the package. If you do not specify any access level, it will be
the default.

Let's understand the access modifiers in Java by a simple table.

Access within within outside package by outside


Modifier class package subclass only package
Private Y N N N
Default Y Y N N
Protected Y Y Y N
Public Y Y Y Y

Note:
 A class cannot be private or protected except nested class

Reference:
1. Java: The Complete Reference
2. Javatpoint
3. Geeksforgeeks

You might also like