0% found this document useful (0 votes)
34 views2 pages

JAVA Calling An Object

Object methods are invoked using dot notation with the object reference, method name, and argument list. Methods can return values which can be assigned to variables or used in expressions. The garbage collector deletes objects from memory when no references to them remain. A method returns when it finishes executing statements, reaches a return statement, or throws an exception. Methods declared void don't return a value while non-void methods must contain a return statement returning a value of the specified type.

Uploaded by

speedmail71
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
34 views2 pages

JAVA Calling An Object

Object methods are invoked using dot notation with the object reference, method name, and argument list. Methods can return values which can be assigned to variables or used in expressions. The garbage collector deletes objects from memory when no references to them remain. A method returns when it finishes executing statements, reaches a return statement, or throws an exception. Methods declared void don't return a value while non-void methods must contain a return statement returning a value of the specified type.

Uploaded by

speedmail71
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 2

Calling an Object's Methods

You also use an object reference to invoke an object's method. You append the method's simple name to
the object reference, with an intervening dot operator (.). Also, you provide, within enclosing parentheses,
any arguments to the method. If the method does not require any arguments, use empty parentheses.

objectReference.methodName(argumentList);

Some methods, such as getArea(), return a value. For methods that return a value, you can use
the method invocation in expressions. You can assign the return value to a variable, use it to make
decisions, or control a loop. This code assigns the value returned by getArea() to the
variable areaOfRectangle:

int areaOfRectangle = new Rectangle(100, 50).getArea();

Remember, invoking a method on a particular object is the same as sending a message to that object. In
this case, the object that getArea()is invoked on is the rectangle returned by the constructor.

The Garbage Collector


The Java runtime environment deletes objects when it determines that they are no longer being used. This
process is called garbage collection.
Or, you can explicitly drop an object reference by setting the variable to the special value null. Remember
that a program can have multiple references to the same object; all references to an object must be
dropped before the object is eligible for garbage collection.

Returning a Value from a Method

A method returns to the code that invoked it when it

 completes all the statements in the method,


 reaches a return statement, or
 throws an exception (covered later),

whichever occurs first.

Any method declared void doesn't return a value

It does not need to contain a return statement, but it may do so. In such a case, a return statement
can be used to branch out of a control flow block and exit the method and is simply used like this:

return;

Any method that is not declared void must contain a return statement with a corresponding return
value, like this:
return returnValue;
The data type of the return value must match the method's declared return type; you can't return an integer
value from a method declared to return a boolean.
A method can also return a reference type.

For example, in a program to manipulate Bicycleobjects, we might have a method like this:

public Bicycle seeWhosFastest(Bicycle myBike, Bicycle yourBike,


Environment env) {
Bicycle fastest;
// code to calculate which bike is
// faster, given each bike's gear
// and cadence and given the
// environment (terrain and wind)
return fastest;
}

When a method uses a class name as its return type, such as whosFastest does, the class of the type of
the returned object must be either a subclass of, or the exact class of, the return type.

Now suppose that you have a method declared to return a Number:

public Number returnANumber() {


...
}

The returnANumber method can return an ImaginaryNumber but not


an Object. ImaginaryNumber is a Number because it's a subclass of Number. However,
an Object is not necessarily a Number — it could be a String or another type.

You can override a method and define it to return a subclass of the original method, like this:

public ImaginaryNumber returnANumber() {


...
}

This technique, called covariant return type, means that the return type is allowed to vary in the same
direction as the subclass.

Note: You also can use interface names as return types. In this case, the object returned must implement
the specified interface.

You might also like