Java-8.10インタフェースの中のクラスを最初から認識します
1242 ワード
この章では、インタフェースのクラスについて説明します.
1.インタフェースの中のクラス:実はインタフェースの中のネストクラス(staticの内部クラスを使う)です.
2.特性
(1)インタフェースに実装を配置することは一般的にできないが,ネストクラスは例外であり,ネストクラスはインタフェース内で自動的にpublic static状態に変換されるため,インタフェースのルールに違反しない.
(2)ネストされたクラスは外部インタフェースを実現できる.
(3)シーンの使用
一般的には、上記の特性や例は使えませんが、各インタフェースの実装が使用されるように、いくつかの共通コードを作成したいときだけです(筆者も使用したことがなく、使用シーンが分かりません).
△どの読者が利用したか、教えてください.ありがとうございます.
まとめ:この章では、インタフェース内のネストされたクラスと、特性と使用シーンについて説明します.
この章はここまでです.ありがとうございます.
-----------------------------------
目次
1.インタフェースの中のクラス:実はインタフェースの中のネストクラス(staticの内部クラスを使う)です.
interface Destination {
String read();
class Test2 implements Destination {
private String label = "abc";
@Override
public String read() {
return label;
}
}
}
2.特性
(1)インタフェースに実装を配置することは一般的にできないが,ネストクラスは例外であり,ネストクラスはインタフェース内で自動的にpublic static状態に変換されるため,インタフェースのルールに違反しない.
(2)ネストされたクラスは外部インタフェースを実現できる.
package com.ray.ch08;
public class Test implements Destination {
@Override
public String read() {
return null;
}
public static void main(String[] args) {
new Test();
new Test2().read();// new
Test2.test();//Test2 static
}
}
interface Destination {
String read();
class Test2 implements Destination {
public static void test() {
}
private String label = "abc";
@Override
public String read() {
return label;
}
}
}
(3)シーンの使用
一般的には、上記の特性や例は使えませんが、各インタフェースの実装が使用されるように、いくつかの共通コードを作成したいときだけです(筆者も使用したことがなく、使用シーンが分かりません).
△どの読者が利用したか、教えてください.ありがとうございます.
まとめ:この章では、インタフェース内のネストされたクラスと、特性と使用シーンについて説明します.
この章はここまでです.ありがとうございます.
-----------------------------------
目次