Java9インターフェースのプライベートメソッド
以下は、Java9インターフェースでプライベートメソッドを使用する方法を示す例です-
例
interface my_int{ public abstract void multiply_vals(int a, int b); public default void add_vals(int a, int b){ sub_vals(a, b); System.out.print("Default method result "); System.out.println(a + b); } private void sub_vals(int a, int b){ System.out.print("Private method result "); System.out.println(a - b); } private static void div(int a, int b){ System.out.print(" Private static method result "); System.out.println(a / b); } } public class my_new_int implements my_int{ @Override public void multiply_vals(int a, int b){ System.out.print("Abstract method result "); System.out.println(a * b); } public static void main(String[] args){ my_int in = new my_new_int(); in.multiply_vals(11, 34); in.add_vals(78, 0); } }
出力
Abstract method result 374 Private method result 78 Default method result 78
「my_int」という名前のインターフェースが定義されています。このインターフェースには、本体のない抽象関数があります。もう1つのデフォルト関数が定義されており、基本的に2つの数値が加算されます。 「sub_vals」という名前の別の関数が定義されており、2つの数値を減算します。
2つの値を分割するdivという名前の別の静的関数が定義されています。 「my_new_int」という名前のクラスは、以前に定義されたインターフェースを実装します。値を乗算して再定義する関数をオーバーライドします。 main関数では、インターフェースのインスタンスが作成され、特定の値を渡すことによって「multiply_vals」関数が呼び出されます。同様に、「add_vals」関数も特定の値を渡すことによって呼び出されます。それぞれの出力がコンソールに表示されます。
-
インターフェイスのJava8静的メソッド
インターフェースにはJava8以降の静的ヘルパーメソッドを含めることもできます。 public interface vehicle { default void print() { System.out.println("I am a vehicle!"); } static void blowHorn() { System.out.println("Blowing horn!!!"); &nb
-
Javaでのメソッドのオーバーロード
メソッドのオーバーロードは、静的ポリモーフィズムの一種です。メソッドのオーバーロードでは、同じ名前で異なるパラメーターを使用して複数のメソッドを定義できます。次のサンプルプログラムについて考えてみます。 例 public class Tester { public static void main(String args[]) { Tester tester = new Tester(); System.out.println(tester.add(1, 2)); &nb