"Halo, Amigo! Aku arep ngomong babagan metode overloading ."

"Sampeyan uga bisa overload wong-wong mau?! Apa dina!"

"Sampeyan bisa nindakake akeh karo dheweke, nanging saiki ora bakal ditindakake."

"Iku kesepakatan."

"Overloading minangka operasi sing prasaja banget. Bener, iku dudu operasi ing metode, sanajan kadhangkala diarani kanthi jeneng sing medeni: polimorfisme parametrik ."

Sing kudu dielingake yaiku saben metode ing kelas kudu duwe jeneng sing unik.

"Iya, aku ngerti."

"Inggih, iku ora kabeh bener. Maksudku, iku ora kabeh bener. Sawijining metode ora kudu duwe jeneng unik. Sing kudu unik yaiku kombinasi jeneng metode lan jinis paramèter . Kombinasi iki uga dikenal minangka tandha metode."

Kode Komentar
public void print();
public void print2();
Iki diijini. Loro cara kasebut duwe jeneng unik.
public void print();
public void print(int n);
Lan iki uga diijini. Cara loro kasebut duwe jeneng unik (tanda tangan).
public void print(int n, int n2);
public void print(int n);
Jeneng metode isih unik ing kene.
public int print(int a);
public void print(int n);
Nanging iki ora diijini. Cara kasebut ora unik, sanajan macem-macem jinis dilewati.
public int print(int a, long b);
public long print(long b, int a);
Nanging iki diijini. Parameter metode kasebut unik.

"Aku wis weruh sing nang endi wae."

"Yep. Nalika sampeyan ngetik " System.out.println ", IntelliJ IDEA nyaranake sawetara rolas versi cara print sing nggunakake paramèter beda. Compiler mung ngenali lan banjur nelpon cara sing dibutuhake adhedhasar jinis paramèter sing pass.

"Sing ora angel. Nanging dudu polimorfisme."

"Utawa luwih akurat, iku dudu cara sing ditindhes."

Miturut cara, aku pengin nuduhake yen jeneng parameter ora relevan. Padha ilang nalika kompilasi. Sawise metode dipatuhi, mung jeneng lan jinis parameter sing dingerteni.