What is overloading explain with an example, JAVA Programming

Assignment Help:

What is Overloading explain with an example?

Overloading is while the similar method or operator can be used on several different kinds of data. For example the + sign is used to add ints as well as concatenate strings. The plus sign behaves differently depending on the kinds of its arguments. Thus the plus sign is inherently overloaded.

Methods can be overloaded as well. System.out.println() can print a double, a float, an int, a long, or a String. You don't do anything various depending on the type of number you need the value of. Overloading takes care of it.

Programmer-defined classes can overload methods as well. To do this easily write two methods with the similar name but different argument lists. For instance last week you saw several different versions of the Car constructor, one that took three arguments and one that took two arguments, and one in which took no arguments. You can use all of these in a single class, by here I only use two because there really aren't any high-quality default values for licensePlate and maxSpeed. Instead, 0 is a perfectly reasonable default value for speed.

public class Car {

private String licensePlate; // e.g. "New York A456 324"
private double speed; // kilometers per hour
private double maxSpeed; // kilometers per hour

// constructors
public Car(String licensePlate, double maxSpeed) {

this.licensePlate = licensePlate;
this.speed = 0.0;
if (maxSpeed >= 0.0) {
this.maxSpeed = maxSpeed;
}
else {
maxSpeed = 0.0;
}

}

public Car(String licensePlate, double speed, double maxSpeed) {

this.licensePlate = licensePlate;
if (maxSpeed >= 0.0) {
this.maxSpeed = maxSpeed;
}
else {
maxSpeed = 0.0;
}

if (speed < 0.0) {
speed = 0.0;
}

if (speed <= maxSpeed) {
this.speed = speed;
}
else {
this.speed = maxSpeed;
}

}

// other methods...

}
Generally a single identifier refers to precisely one method or constructor. While as above, one identifier refers to more than one techniques or constructor, the method is said to be overloaded. You could argue that this should be known as identifier overloading rather than method overloading since it's the identifier that refers to more than one method, not the method in which refers to more than one identifier. Therefore in common usage this is known as method overloading.

Which method an identifier describes to depends on the signature. The signature is the number, type, and order of the arguments passed to a method. The signature of the first constructor in the above program is Car(String, double). The signature of the second techniques is Car(String, double, double). Thus the first version of the Car() constructor is called when there is one String argument followed through one double argument and the second version is used while there is one String argument followed through two double arguments.

If there are no arguments to the constructor, or two or three arguments in which aren't the right type in the right order, then the compiler produces an error because it doesn't have a techniques whose signature matches the requested method call. For instance
Error: Method Car(double) not found in class Car.


Related Discussions:- What is overloading explain with an example

Linked list, Write a program that takes as input a sequence of transactions...

Write a program that takes as input a sequence of transactions of the form "buy x; share(s) at $y each" or "sell x share(s) at $y each," assuming that the transactions occur on con

Java remote method invocation (RMI) architecture, Java Remote Method Invoca...

Java Remote Method Invocation (RMI): It gives a way for a Java program on one machine to interact with objects residing in different JVMs. The important blocks of the RMI arc

Sequence diagrams , Sequence diagrams are communication diagrams which deta...

Sequence diagrams are communication diagrams which detail what messages are sent and when. The sequence diagrams are placed according to time. The time performs as you move from to

Implement a driver program to test out all constructors, Implement a class ...

Implement a class  Book  (Book.java). A book will have three instance variables: a  title  (a String, for example: "Big Java" or "The Hitchhiker's Guide to the Galaxy"), an  author

What are the kinds of computer network, What are the kinds of computer netw...

What are the kinds of computer network according to the distance among nodes? The kinds of computer network according to the distance among nodes are: 1. LAN 2. WAN

Inheritance, Your task for this assignment is to define multiple classes vi...

Your task for this assignment is to define multiple classes via inheritance. Your classes should implement various "snacks" including "M&Ms", "Popcorn", etc. To begin, create an a

Programming Assignment : Trains, I CANNOT FAIL THIS I NEED IT FRIDAY TASK...

I CANNOT FAIL THIS I NEED IT FRIDAY TASK 1 : Read The definition of the Item interface and implement TrainCar Your are being provided with 1. Item.java 2. Automobile.java 3.

Describe the final keyword, Describe the final keyword ? The final key...

Describe the final keyword ? The final keyword is used in various different contexts as a modifier meaning in which what it modifies cannot be changed in a few sense. final c

What restrictions are placed on method overriding, What restrictions are pl...

What restrictions are placed on method overriding? Overridden methods must have the similar name, argument list, and return type. The overriding method may not limit the access

Toward privacy preserving and collusion resistance, Need Toward Privacy Pre...

Need Toward Privacy Preserving and Collusion Resistance in a Location Proof Updating System Project Description: Today's location-sensitive service relies on user's mobile de

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd