<< Chapter < Page Chapter >> Page >

Two overloaded methods

The program defines two overloaded methods named overLoadMthd . One requires an incoming parameter of type Test , and the other requires an incoming parameter of type DumIntfc . When called, each of the overloaded methods prints a message indicating the type of itsargument.

Two objects of the class Test

The program instantiates two objects of the class Test . It assigns one of the object's references to a reference variable named a , which is declared to be of type Test .

The program assigns the other object's reference to a reference variable named b , which is declared to be of type DumIntfc . (Remember, both objects were instantiated from the class Test .)

No surprises here

Then it calls the overloaded method named overLoadMthd twice in succession, passing first the reference variable of type Test and then the reference variable of type DumIntfc .

The program output doesn't produce any surprises. When the reference variable of type Test is passed as a parameter, the overloaded method requiring that type of parameter is selected for execution. When the referencevariable of type DumIntfc is passed as a parameter, the overloaded method requiring that type of parameter is selected for execution.

Back to Question 6

Answer 5

C. float 2.14748365E9 float 9.223372E18double 4.2

Explanation 5

Another subtle method selection issue

This program illustrates a subtle issue in the automatic selection of an overloaded method based on assignment compatibility.

This program defines two overloaded methods named square . One requires an incoming parameter of type float , and the other requires an incoming parameter of type double .

When called, each of these methods prints the type of its formal argument along with the value of the incoming parameter as represented by its formalargument type. In other words, the value of the incoming parameter is printed after it has been automatically converted to the formal argument type.

Printout identifies the selected method

This printout makes it possible to determine which version is called for different types of parameters. It also makes it possible to determine the effectof the automatic conversion on the incoming parameter. What we are going to see is that the conversion process can introduce serious accuracy problems.

Call the method three times

The square method is called three times in succession, passing values of type int , long , and double during successive calls.

(Type long is a 64-bit integer type capable of storing integer values that are much larger than can be stored intype int . The use of this type here is important for illustration of data corruption that occurs through automatic typeconversion.)

The third invocation of the square method, passing a double as a parameter, is not particularly interesting. There is a version of square with a matching argument type, and everything behaves as would be expected for this invocation. The interesting behavioroccurs when the int and long values are passed as parameters.

Passing an int parameter

Questions & Answers

summarize halerambos & holbon
David Reply
the Three stages of Auguste Comte
Clementina Reply
what are agents of socialization
Antonio Reply
sociology of education
Nuhu Reply
definition of sociology of education
Nuhu
what is culture
Abdulrahim Reply
shared beliefs, values, and practices
AI-Robot
What are the two type of scientific method
ogunniran Reply
I'm willing to join you
Aceng Reply
what are the scientific method of sociology
Man
what is socialization
ogunniran Reply
the process wherein people come to understand societal norms and expectations, to accept society's beliefs, and to be aware of societal values
AI-Robot
scientific method in doing research
ogunniran
defimition of sickness in afica
Anita
Cosmology
ogunniran
Hmmm
ogunniran
list and explain the terms that found in society
REMMY Reply
list and explain the terms that found in society
Mukhtar
what are the agents of socialization
Antonio
Family Peer group Institution
Abdulwajud
I mean the definition
Antonio
ways of perceived deviance indifferent society
Naomi Reply
reasons of joining groups
SAM
to bring development to the nation at large
Hyellafiya
entails of consultative and consensus building from others
Gadama
World first Sociologist?
Abu
What is evolutionary model
Muhammad Reply
Evolution models refer to mathematical and computational representations of the processes involved in biological evolution. These models aim to simulate and understand how species change over time through mechanisms such as natural selection, genetic drift, and mutation. Evolutionary models can be u
faruk
what are the modern trends in religious behaviours
Selekeye Reply
what are social norms
Daniel Reply
shared standards of acceptable behavior by the group or appropriate behavior in a particular institution or those behaviors that are acceptable in a society
Lucius
that is how i understood it
Lucius
examples of societal norms
Diamond
Discuss the characteristics of the research located within positivist and the interpretivist paradigm
Tariro Reply
what is Industrialisation
Selekeye Reply
industrialization
Angelo
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask