Transcript
Page 1: Classes, objects in JAVA

CLASSES, OBJECTS&

METHODSModule-2

Page 2: Classes, objects in JAVA

TOPICS TO COVER Introduction.

Defining a class.

Creating Objects.

Accessing Class Members.

Page 3: Classes, objects in JAVA

INTRODUCTION Underlying structure of each JAVA programs is

CLASSES.

CLASS

DATA ITEMS

FUNCTIONS

OBJECTSbasic program

Components

DEFINES

CREATE

METHODSOBJECTS

FIELDS

METHODS

CREATE

Page 4: Classes, objects in JAVA

DEFINING A CLASS A class is a user-defined data type. Variables and Functions can be created within

class SYNTAX EXAMPLEclass classname { field declaration;

method declaration;

}

class area { int side; int length;}

There is no semi-colon after closing braces

Declaring variables

Instance variables are declared exactly as LOCAL variables

INSATNCE VARIABLES

Page 5: Classes, objects in JAVA

METHOD DECLARATION Without methods class has NO LIFE. Since objects created by such class cannot respond to

any messages. Thus, methods are necessary for MANIPULATING DATA. SYNTAX EXAMPLE

type method-name(parameter list) {

}

Type of the value the method returns. It can be void, int, float, double

class area { int side; int length;void get(int s, int l) { side = s; length = l; }}

Page 6: Classes, objects in JAVA

EXAMPLE FOR CREATING CLASSES

Design a class Account that stores customer name, account number, and type of account. Include necessary methods to achieve following tasks:- Deposit money. Display balance. Permit withdrawal and update balance.

Page 7: Classes, objects in JAVA

An object in JAVA is essentially a block of memory that contains

space to store all the instance variables.

Creating an object also refers to INSTANTIATING AN OBJECT.

Objects in JAVA are created using new. The new operator dynamically

allocates memory for an object an returns a reference to it.

SYNTAX:-

CREATING OBJECTS

class area { int side; int length;void get(int s, int l) { side = s; length = l;}

classname objectname;objectname = new classname();

area a1;a1 = new area();

area a1 = new area();

combined

Allocates at run-timenull

a1

Indicates that it does not point to any object

a1

Page 8: Classes, objects in JAVA

Values are to be assigned to variables in order to use them in

our programs.

Since we are outside the class, we cannot access the instance

variables and methods directly.

Object and dot operator are used to do this.

SYNTAX:-

objectname.variablename = value;

objectname.methodname(parameter-list);

ACCESSING CLASS MEMBERS

area a1 = new area();

a1.side = 10;

a1. get (10, 15);

class area { int side; int length;void get(int s, int l) { side = s; length = l;}

Page 9: Classes, objects in JAVA
Page 10: Classes, objects in JAVA

EXAMPLE

Page 11: Classes, objects in JAVA

Constructors

Method Overloading

Constructor Overloading

Nesting of methods

Page 12: Classes, objects in JAVA

JAVA allows objects to initialize themselves when they are created

CONSTRUCTORS

CONSTRUCTOR

PROPERTIES:-

• Initializes an object immediately upon creation.

• Same name as the class in which it resides and syntactically similar

to a method.

• Is called automatically after the object is created.

• Does not have return type.

EXAMPLE

Page 13: Classes, objects in JAVA

NO RETURN TYPE

OUTPUT

Page 14: Classes, objects in JAVA
Page 15: Classes, objects in JAVA

Methods have same name, but different parameter list .

Is used when objects are required to perform similar tasks but

using different input parameters.

Also known as POLYMORPHISM.

Here, the aim is to provide several method definitions all with

same name, but different parameter lists.

The difference may either in number or type of arguments

METHOD OVERLOADING

Method’s return type does not play any role in this

Page 16: Classes, objects in JAVA

In addition to overloading methods, you can also

overload constructor method

EXAMPLE

OVERLOADING CONSTRUCTORS

Page 17: Classes, objects in JAVA

A method of a class can be called only by an object of that class using dot operator.

NESTING OF METHODS

EXCEPTION

A method can be called by using only its name by another method of the same

classNESTING OF METHODS

Page 18: Classes, objects in JAVA

STATIC MEMBERS

Is used to define a member that is common to all objects and

accessed without using a particular object.

Thus member belongs to the class as a whole rather than the

objects created from the class.

Used when we want to have a variable common to all instances of

a class.

SYNTAX:-static int count;static int max(int x, int y)

STATIC MEMBERS

Class variables and Class methods

Referred to as

Page 19: Classes, objects in JAVA

EXAMPLE

Page 20: Classes, objects in JAVA

RESTRICTIONS FACED BY STATIC METHODS:-

They can only call other static methods.

They can only access static data.

They cannot refer to this or super in any

way.

STATIC

METHODS

ARE CALLED

USING CLASS

NAME

Page 21: Classes, objects in JAVA

USING OBJECTS as PARAMETERS

We know how to pass simple types as parameters to methods.

It is possible, correct and common to pass OBJECTS to methods.

EXAMPLE

Page 22: Classes, objects in JAVA

CALL by VALUE vs. CALL by REFERENCE

CALL BY VALUE CALL BY REFERANCE

This method copies the value of an argument into the formal parameter of the subroutine

In this method, reference to an argument is passed to the parameter.

Does not access actual argument

This reference is used to access the actual argument.

Thus, changes made to parameter of the subroutine have no effect on the argument.

Thus, changes made to parameter will have an effect on the argument.

Page 23: Classes, objects in JAVA

EXAMPLE

CALL by VALUE:- Simple type arguments are passed to methods.

CALL by REFERENCE:- Objects are passed to methods

REMEMBER

Page 24: Classes, objects in JAVA

RECURSION

JAVA supports recursion.

Recursion is the process of defining

something in terms of itself.

A method that calls itself is said to be

recursive.

Page 25: Classes, objects in JAVA

VISIBILITY CONTROL

Visibility modifiers are used to restrict the access to certain variables and methods from outside the class.

Also known as ACCESS MODIFIERS.VisibilityLabels

PUBLICPRIVATE

PROTECTED

Page 26: Classes, objects in JAVA

VISIBILITY CONTROL (Contd..)

PUBLIC Visible to entire class in which it is defined and All the class Outside

PRIVATE Enjoys highest degree of protection.Accessible only with their own class.Cannot be inherited, thus not accessible in sub-class.

Friendly When no access modifier is specified then the default version of public accessibility is known as “FRIENDLY”

PUBLIC Friendly

Makes fields visible in all classes, regardless of their packages

Makes fields visible only in the same package.

Group of related classes stored separately

PROTECTED Its level lies between PUBLIC ACCESS & FRIENDLY ACCESS.Makes the fields visible not only to all classes and subclasses in same package but also to subclasses in other packages

Page 27: Classes, objects in JAVA

Top Related