メソッドのオーバーロードとは何ですか?

青灯夜游
リリース: 2020-07-18 13:32:43
オリジナル
5924 人が閲覧しました

メソッドのオーバーロードとは、クラス内に同じ名前を持つ複数のメソッドを定義することを指しますが、各メソッドには異なるパラメーターの型または数が必要です。メソッドのオーバーロードは、通常のメソッドまたはコンストラクター メソッドで発生する可能性があります。メソッドのオーバーロードは、同じクラスまたは親クラスと子クラスで発生する可能性があります。

メソッドのオーバーロードとは何ですか?

#メソッドのオーバーロードとは、メソッド名と異なる読み込みパラメータが繰り返されることを意味します。

Java クラス内で、同じ名前のメソッドが複数定義されており、メソッド名は同じでも、メソッドのパラメータの型や数などが異なることをメソッドのオーバーロードといいます。オーバーロードされたメソッドが呼び出されるとき、Java コンパイラは呼び出されたメソッドのパラメータの型と数をチェックして、適切なメソッドを選択します。メソッドのオーバーロードは、同様の一連のタスクを実行するが、パラメーターのタイプ、パラメーターの数、またはパラメーターの順序が異なるメソッドを作成するためによく使用されます。

メソッドのオーバーロードは、通常のメソッドまたはコンストラクターで発生する可能性があります。メソッドのオーバーロードは、同じクラスまたは親クラスと子クラスで発生する可能性があります。

Java メソッドのオーバーロード: 戻り値の型と修飾子は同じでも異なっていても構いません。同じ名前のメソッドには異なるパラメータ リストが必要です。戻り値の型が異なるだけでは、2 つのオーバーロードされたメソッドを区別するのに十分ではありません。

具体的な仕様

1. メソッド名は同じである必要があります。

2. 異なるメソッド本体を区別するには、メソッドのパラメーター リストは、パラメーターのタイプや数も含めて異なる必要があります。

1) パラメータの数が異なる場合、パラメータのタイプは無視されます。

2) パラメータの数が同じ場合、パラメータの種類は異なる必要があります。

3. メソッドの戻り値の型と修飾子は、同じでも異なっていても構いません。

例:

質問要件: 2 つのデータを比較して、それらが等しいかどうかを確認します。

パラメータの型は、2 byte 型、short 型 2 つ、int 型 2 つ、long 型 2 つです。

そしてメイン メソッドでテストしてください

public class CaiNiao{
    
    public static void main(String[] args){
        byte a = 10;
        byte b = 20;
        System.out.println(isSame(a,b));
        
        System.out.println((isSame(short)20,(short)20));
        
        System.out.println(isSame(11,22));
        
        System.out.println(isSame(10L,10L));
    }
    
    public static boolean isSame(byte a,byte b){
        System.out.println("两byte参数的方法执行!");
        boolean same ;
        if(a==b){
            same = true;
        }else{
            same = false;
        }
        return same;
    }

    public static boolean isSame(short a,short b){
        System.out.println("两short参数的方法执行!");
        boolean same = a == b ?true:false;
        return same;
    }
    
    public static boolean isSame(int a,int b){
        System.out.println("两int参数的方法执行!");
        return a == b:;
    }
    
    public static boolean isSame(long a,long b){
        System.out.println("两long参数的方法执行!");
        if (a==b){
            return true;
        }
        else{
            return false;
        }
    }
}
ログイン後にコピー

Java メソッドのオーバーロードでは、同じ名前のメソッドには異なるパラメーター リストが必要であることに注意してください。戻り値の型が異なるだけでは、2 つのオーバーロードを区別するのに十分ではありません。 . 読み込み方法。

推奨チュートリアル: Java チュートリアル

以上がメソッドのオーバーロードとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!