Sobrecarga de método Java

Uma descrição detalhada com exemplos de sobrecarga de método em Java é fornecida para atender aos requisitos educacionais.

Benefícios da sobrecarga de métodos em Java

  1. Um programa que sobrecarrega métodos é mais legível.
  2. Ele permite que os programadores chamem o mesmo método em diferentes tipos de dados, proporcionando-lhes flexibilidade.
  3. O código fica mais limpo assim.
  4. A execução leva menos tempo.
  5. A sobrecarga de métodos reduz a complexidade do código .
  6. O código pode então ser reutilizado, economizando memória.


Sobrecarga de método em Java

É imperativo entender que a sobrecarga de método em Java pode ter vários métodos com parâmetros diferentes com o mesmo nome.

Exemplo

int my_Int_Method(int mrx)
float my_Float_Method(float mrx)
double my_Dobule_Method(double mrx, double ample)

Dois métodos podem ser usados ​​para adicionar números de tipos diferentes no exemplo a seguir:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public class Main {
static int add_Int_Numbers(int mrx,int ample){
return mrx+ample;
}
static double add_Double_Numbers(double mrx,double ample){
return mrx+ample;
}
public static void main(String[] args) {
int result_Int_Method=add_Int_Numbers(8,5);
System.out.println("Result of int method: "+result_Int_Method);
double result_Double_Method=add_Double_Numbers(4.6,6.3);
System.out.println("Result of double method: "+result_Double_Method);
}
// Outputs:
// Result of int method: 13
// Result of double method: 10.899999999999999
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

É melhor sobrecarregar um método em vez de definir dois que fazem a mesma coisa.

O exemplo a seguir sobrecarrega o sum_Method para funcionar em doubles e ints :

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
public class Main {
static int sum_Numbers(int mrx,int ample){
return mrx+ample;
}
static double sum_Numbers(double mrx,double ample){
return mrx+ample;
}
public static void main(String[] args) {
int result_Int_Method=sum_Numbers(4,2);
System.out.println("Result of int sum_Method: "+result_Int_Method);
double result_Double_Method=sum_Numbers(3.6,5.3);
System.out.println("Result of double_Method: "+result_Double_Method);
}
// Outputs:
// Result of int sum_Method: 6
// Result of double_Method: 8.9
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class Main {
static int Product_Method_Int(int mrx,int ample){
return mrx*ample;
}
static long Product_Method_Long(long mrx,long ample){
return mrx*ample;
}
public static void main(String[] args) {
int result1=Product_Method_Int(24,2);
long result2=Product_Method_Long(1231433113,454213423);
System.out.println("Product of Int_Numbers: "+result1);
System.out.println("Product of Long_Numbers: "+result2);
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Como discutimos acima, sobrecarregar um método é melhor do que definir dois que fazem a mesma coisa.
Para longs e integers, o exemplo a seguir sobrecarrega o product_Method:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class Main {
static int product_Method(int mrx,int ample){
return mrx*ample;
}
static long product_Method(long mrx,long ample){
return mrx*ample;
}
public static void main(String[] args) {
int result1=product_Method(24,2);
long result2=product_Method(1231433113,454213423);
System.out.println("Product of Int_Numbers: "+result1);
System.out.println("Product of Long_Numbers: "+result2);
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Lembrete: Se o número e o tipo de parâmetros forem diferentes, vários métodos podem ter o mesmo nome.

Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone