首页 > Java > java教程 > 建造者参考

建造者参考

Linda Hamilton
发布: 2025-01-14 10:08:43
原创
684 人浏览过

Referências de construtor

  • 引用构造函数使用语法:classname::new.

  • 可以分配给具有构造函数兼容方法的功能接口。

参数化构造函数的示例

  • 如果函数式接口有一个带有一个参数的方法,则该引用将与带有该参数的构造函数相关联。

MyFunc myClassCons = MyClass::new;
MyClass mc = myClassCons.func("测试");

  • 这里,MyClass(String s) 是引用的构造函数。

使用默认构造函数的示例

  • 要引用无参数构造函数,您必须使用其方法也没有参数的函数接口。

MyFunc2 myClassCons = MyClass::new;
MyClass mc = myClassCons.func();

与泛型类一起使用

  • 对于泛型类,您可以在创建引用时指定类型。

MyGenClass::new;

  • 由于类型推断,规范并不总是强制性的。

类型推断

  • 对构造函数的引用会自动选择最适合函数式接口方​​法的。

// 演示构造函数引用。
// MyFunc 是一个函数式接口,其方法返回
// MyClass 引用。
MyFunc 接口 {
MyClass func(String s);
}
类 MyClass {
私有字符串 str;
// 该构造函数采用一个参数。
MyClass(字符串 s) { str = s; }
// 这是默认的构造函数。
MyClass() { str = ""; }
// ...
字符串 getStr() { 返回 str; }
}
类 ConstructorRefDemo {
public static void main(String args[])
{
// 创建对 MyClass 构造函数的引用。
// 由于 MyFunc 的 func() 方法采用一个参数,
// new 引用 MyClass
的参数化构造函数 // 而不是默认构造函数。
MyFunc myClassCons = MyClass::new;构造函数参考
// 使用此构造函数引用创建 MyClass 的实例。
MyClass mc = myClassCons.func("测试");
// 使用新创建的 MyClass 实例。
System.out.println("mc 中的 str 为 " mc.getStr());
}
}

以上是建造者参考的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板