過負荷と過負荷
Javaとオブジェクト向け言語では,この2つのよく混同される概念を過度にロードし,過度に記述することについて議論する.
まず、2つの概念定義について説明します.
オーバーロード(Overloading):同じ名前のメソッドを使用しますが、パラメータのタイプと数が異なることを確認します.
overriding(Overriding):親が所有するメソッドを子で再定義して使用
文字で見るだけでは混同される可能性があるのでコードで整理しておきましょう
使用する言語はJavaです.
オーバーロードの例.
実行すると、正しい方法が渡された値と一致します.
大げさな例です
Overridingオブジェクトを作成して呼び出しメソッドを呼び出すと、overridingの呼び出しが呼び出されることに気づきます.
まず、2つの概念定義について説明します.
オーバーロード(Overloading):同じ名前のメソッドを使用しますが、パラメータのタイプと数が異なることを確認します.
overriding(Overriding):親が所有するメソッドを子で再定義して使用
文字で見るだけでは混同される可能性があるのでコードで整理しておきましょう
使用する言語はJavaです.
オーバーロードの例.
public class Overloading {
void A() {
System.out.println("A");
}
void A(int n) {
System.out.println("A가 "+n+"개나!");
}
void A(String name) {
System.out.println("A는 "+name+"의 것!");
}
public static void main(String[] args) {
Overloading o = new Overloading();
o.A();
o.A(3);
o.A("김이박");
}
}
3つの方法(名前A)があるが、各方法の受信パラメータのタイプと数は異なる.実行すると、正しい方法が渡された値と一致します.
大げさな例です
public class OverridingSuper {
public void call(String name) {
System.out.println("안녕하세요? "+name+"입니다.");
}
}
public class Overriding extends OverridingSuper {
public void call(String name) {
System.out.println("안녕하십니까? 저는 "+name+"입니다.");
}
public static void main(String[] args) {
Overriding o = new Overriding();
o.call("김이박");
}
}
子クラスOverridingでは、親クラスで定義された呼び出しメソッドが再定義されます.Overridingオブジェクトを作成して呼び出しメソッドを呼び出すと、overridingの呼び出しが呼び出されることに気づきます.
Reference
この問題について(過負荷と過負荷), 我々は、より多くの情報をここで見つけました https://velog.io/@nkstar00/오버로딩Overloading과-오버라이딩Overridingテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol