Uvod v preobremenitev na Javi

Java je objektno usmerjen programski jezik in sledi osnovnim konceptom OOP. Preobremenitev je eden pomembnih konceptov na Javi. Preobremenitev omogoča različne metode z istim imenom v razredu, vendar z različnimi podpisi. Podpis vključuje število parametrov, vrsto podatkov parametrov in zaporedje parametrov, posredovanih v metodi. V Javi, metoda in konstruktorji, sta lahko oba preobremenjena. Preobremenitev metod poteka v času prevajanja, zato je znan tudi pri polimorfizmu v času prevajanja. Preobremenitev metod v razredu se izvede za večjo berljivost programov, tako da lahko programer napiše izboljšano izvajanje katere koli metode za različne scenarije.

Razmislite o scenariju, v katerem želi programer ugotoviti količino različnih geometrijskih figur, kot so kocka, valj in pravokotna prizma. Ker imajo trije različno formulo za iskanje volumna in imajo različno število parametrov. Prostornina kocke bo potrebovala le en parameter, valj bo vzel dva, pravokotna prizma pa tri parametre. Toda glavni namen je najti samo količino številk. Tako lahko ustvarimo ločene metode obsega za različne figure, vendar z istim imenom. Na ta način se v praktičnih scenarijih uporablja metoda Preobremenitev.

Kako preobremenitev deluje na Javi?

Delovanje preobremenitve metode je razloženo s primerom:

Koda:

class Main(
int volume(int side)
(
return side * side * side;
)
int volume(int length, int breadth, int height)
(
return length*breadth*height;
)
double volume(int radius, int height)
( return 3.14 * (radius * radius)* height / 3;
)
public static void main(String() args)
(
Main oe = new Main();
System.out.println("Volume of Cube " +oe.volume(10));
System.out.println("Volume of Rectangular prism " +oe.volume(10, 12, 30));
System.out.println("Volume of Cone "+oe.volume(5, 10));
) )

Izhod:

Pojasnilo zgornje kode: V zgornjem primeru moramo najti obseg treh geometrijskih figur, tako da smo ustvarili 3 ločene preobremenjene metode z istim imenom kot 'volume', vendar imajo vse metode različno število argumentov. Torej v glavni metodi, ko se vodi one.volume (10), potem se imenuje metoda obsega z enim parametrom, tj. Int volumen (int stran). Podobno je tudi pri drugih metodah obsega, na podlagi števila argumentov se imenujejo in obdelujejo različne metode.

V tem primeru so metode preobremenjene na podlagi števila argumentov, vendar jih je mogoče preobremeniti tudi na podlagi podatkovne vrste parametrov in zaporedja parametrov in se zato imenujejo samo v skladu s tem.

Vrste preobremenitve na Javi

V Javi obstajajo trije načini preobremenitve metod:

1. Število parametrov

Java metode je mogoče preobremeniti s številom parametrov, ki so bili preneseni v metodo. Na primer, če ima 1 metoda obsega 2 parametra in druga metoda 3 parametre, potem pride pod preobremenitev na podlagi števila parametrov.

Koda:

class Multiplication
(
int mult(int a, int b) // method mult having 2 parameters
(
return a*b;
)
//Method Overloading on number of parameters
int mult(int a, int b, int c) // method mult having 3 parameters
(
return a*b*c;
)
)
class Main
(
public static void main(String() args)
(
Multiplication M = new Multiplication();
System.out.println(M.mult(10, 9));
System.out.println(M.mult(10, 9, 8));
)
)

Izhod:

2. Podatkovna vrsta parametrov

Podatkovna vrsta parametrov, posredovanih v metodi, je zelo pomembna, zato se lahko metode obravnavajo kot preobremenjene, če imata 2 ali isti isto ime z enakim ali različnim številom argumentov, vendar različne vrste podatkov parametrov v različnih metodah.

Koda:

class Multiplication
(
int mult(int a, int b) // method mult having 2 parameters
(
return a*b;
)
//Method Overloading on datatype of parameters
double mult(double a, double b) // method mult overloaded
(
return a*b;
)
)
class Main
(
public static void main(String() args)
(
Multiplication M = new Multiplication();
System.out.println(M.mult(10, 9));
System.out.println(M.mult(10.5, 9.8));
)
)

Izhod:

3. Zaporedje parametrov

Metoda Preobremenitev lahko opravite tudi s spreminjanjem zaporedja parametrov 2 ali več preobremenjenih metod. Na primer, če so parametri 1 metode (String x, char y) in je druga metoda (char x, String y), vendar imata oba isto ime, se šteje, da sta zgornji 2 metodi preobremenjeni z drugačnim zaporedjem parametrov.

Koda:

class Employee
(
void details(String name, char rank) // method details having 2 parameters
(
System.out.println("Employee name is "+name);
System.out.println("Employee ranking is "+rank);
) //Method Overloading on sequence of parameters
void details(char rank, String name) // method details overloaded
(
System.out.println("Employee name is "+name);
System.out.println("Employee ranking is "+rank);
)
)
class Main
(
public static void main(String() args)
( Employee emp = new Employee();
emp.details("Rajesh", 'A'); // calls the first method (details(String, char))
emp.details("Ram", 'B'); // calls the second method (details(char, String))
)
)

Izhod:

Pojasnilo zgornje kode: V zgornjem primeru sta obe metodi "podrobnosti" preobremenjeni na podlagi zaporedja, če sta parametra. Ko se prikliče stavek emp.details ('Rajesh', 'A'), potem se prikliče in obdeluje metoda z argumenti v vrstnem redu (String, char), torej neveljavni podatki (ime niza (char string), char rank).

Pravila za preobremenitev na Javi

Spodaj so navedena pravila, ki si jih je treba zapomniti pri preobremenitvi Java:

  • Prvo in najpomembnejše pravilo preobremenitve metode je, da morajo metode imeti isto ime v enem razredu.
  • Dve ali več metod v razredu je mogoče preobremeniti na podlagi različnih podpisov in podpis vključuje število parametrov, podatkovne vrste parametrov, zaporedje parametrov, kot je razloženo zgoraj.
  • Vrnitvena metoda metode ni del podpisa, zato preobremenitve nikoli ne moremo opraviti na podlagi vrste vrnitve in če je to storjeno, to ustvari napako v času prevajanja.

Zaključek

Preobremenitev je eden pomembnih konceptov na Javi in ​​se lahko opravi tako za metode kot za konstruktorje. Obstaja nekaj pravil o preobremenitvi, ki jih je treba upoštevati, preden jih začnete izvajati v programiranju.

Priporočeni članki

To je vodnik za preobremenitev na Javi. Tukaj razpravljamo o nekaterih določenih pravilih za preobremenitev, ki jih je treba upoštevati pred uvedbo pomembnih konceptov v Javi, metodah in konstruktorjih. Obiščite lahko tudi druge naše sorodne članke, če želite izvedeti več -

  1. Preobremenitev v C ++
  2. Java Tools Deployment Tools
  3. Dedovanje v Javi
  4. Preobremenitev v PHP
  5. Polimorfizem na Javi
  6. Dedovanje v PHP