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

Class and Objects

The document discusses classes and objects in Java. It defines a class as a collection of fields and methods that operate on those fields. Anything in Java must be represented by an object which is an instance of a class. It then demonstrates how to define a Circle class with fields like radius and center coordinates, and methods to calculate the circumference and area. It shows how to create Circle objects, access their fields and methods, and output the results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views

Class and Objects

The document discusses classes and objects in Java. It defines a class as a collection of fields and methods that operate on those fields. Anything in Java must be represented by an object which is an instance of a class. It then demonstrates how to define a Circle class with fields like radius and center coordinates, and methods to calculate the circumference and area. It shows how to create Circle objects, access their fields and methods, and output the results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 16

Classes and Objects in Java

1
Introduction
 Java is a true Object Oriented Language and therefore the
underlying structure of all Java programs is classes.

 Anything, we wish to represent in Java must be encapsulated


in a class that defines the “state” and “behavior” of the basic
program components known as objects.

 Classes create objects and objects use methods to


communicate between them. They provide a convenient
method for packaging a group of logically related data items
and functions that work on them.

 A class essentially serves as a template for an object and


behaves like a basic data type “int”. It is therefore important
to understand how the fields and methods are defined in a
class and how they are used to build a Java program that
incorporates the basic Object Oriented concepts such as
encapsulation, inheritance, and polymorphism. 2
Classes

 A class is a collection of fields (data) and


methods (procedure or function) that operate
on that data.

Circle

centre
radius

circumference()
area()

3
Classes
 The basic syntax for a class definition:
class ClassName [extends SuperClassName]
{
[fields declaration]
[methods declaration]
}

 class – no fields, no methods

public class Circle


{
// my circle class
}

4
Adding Fields: Class Circle with fields

 Add fields
public class Circle
{
public double x, y; // centre coordinate
public double r; // radius of the circle

 The fields (data) are also called the instance


variables

5
Adding Methods

 A class with only data fields has no life. Objects


created by such a class cannot respond to any
messages.
 Methods are declared inside the body of the class but
immediately after the declaration of data fields.
 The general form of a method declaration is:

type MethodName (parameter-list)


{
Method-body;
}

6
Adding Methods to Class Circle
public class Circle
{

public double x, y; // centre of the circle


public double r; // radius of circle

//Methods to return circumference and area


public double circumference()
{
return 2*3.14*r;
}
public double area() Method Body
{
return 3.14 * r * r;
}} 7
Data Abstraction

 Declare the Circle class, have created a new


data type – Data Abstraction

 Can define variables (objects) of that type:

Circle aCircle;
Circle bCircle;

8
Class of Circle cont.

 aCircle, bCircle simply refers to a Circle


object, not an object itself.

aCircle bCircle

null null

Points to nothing (Null Reference) Points to nothing (Null Reference)


9
Creating objects of a class

 Objects are created dynamically using the


new keyword.
 aCircle and bCircle refer to Circle objects
aCircle = new Circle() ; bCircle = new Circle() ;

10
Creating objects of a class
aCircle = new Circle();
bCircle = new Circle() ;

bCircle = aCircle;

11
Creating objects of a class
aCircle = new Circle();
bCircle = new Circle() ;

bCircle = aCircle;

Before Assignment After Assignment

aCircle bCircle aCircle bCircle

P Q P Q

12
Automatic garbage collection

 The object Q does not have a reference and


cannot be used in future.

 The object becomes a candidate for automatic


garbage collection.

 Java automatically collects garbage


periodically and releases the memory used to
be used in the future.
13
Accessing Object/Circle Data

 Similar to C syntax for accessing data defined


in a structure.
ObjectName.VariableName
ObjectName.MethodName(parameter-list)

Circle aCircle = new Circle();

aCircle.x = 2.0 // initialize center and radius


aCircle.y = 2.0
aCircle.r = 1.0

14
Executing Methods in Object/Circle

 Using Object Methods:


sent ‘message’ to aCircle

Circle aCircle = new Circle();

double area;
aCircle.r = 1.0;
area = aCircle.area();

15
Using Circle Class
// Circle.java: Contains both Circle class and its user class
//Add Circle class code here
class MyMain
{
public static void main(String args[])
{
Circle aCircle; // creating reference
aCircle = new Circle(); // creating object
aCircle.x = 10; // assigning value to data field
aCircle.y = 20;
aCircle.r = 5;
double area = aCircle.area(); // invoking method
double circumf = aCircle.circumference();
System.out.println("Radius="+aCircle.r+" Area="+area);
System.out.println("Radius="+aCircle.r+" Circumference ="+circumf);
}
}

Radius=5.0 Area=78.5
Radius=5.0 Circumference =31.400000000000002
16

You might also like