今日は、Java8での コンストラクター、静的メソッド、およびメソッドの新しい使い方 を学び、ソース コードを共有したので、みんなで一緒に学ぶこと が でき ます 。クラス パーソン { プライベート文字列 firstName; プライベート文字列 lastName; }
public class SomeThing { String startWith(String s){ return String.valueOf(s.charAt(0)); } }
@FunctionalInterface パブリック インターフェイス PersonFactory<P extends Person> { P create(String firstName,String lastName); }
@FunctionalInterface パブリック インターフェイス IConvert<F,T> { T Convert(F from); }
public class IConvertTest { /** * メソッドとコンストラクターの参照 * java8 では、キーワード:: を介してメソッドとコンストラクターの参照を渡すことができます。 */ @Test public void staticMethodQuote(){ IConvert<String,Integer> Converter = Integer::parseInt; int Converted = Converter.convert("1233"); System.out.println(converted); } @Test public void quoteObjectMethod (){ SomeThing something = new SomeThing(); IConvert<String,String> Convert =something::startWith; Convert.convert("abc"); } //引用コンストラクター @Test public void quoteConstructorMethod() { // 通常の手動で実装されたファクトリ クラスを使用する代わりに、コンストラクターを使用してすべての作業が統合されます // Person::new を介して Person コンストラクターへの参照を作成します。 // Java コンパイラは、PersonFactory.create の関数シグネチャと一致する正しいコンストラクターを自動的に選択します。 PersonFactory<人> 工場 = 人::新しい; 人 p = 工場.create("zhuge", "xx"); System.err.println(p); } }