在 java 在中间,引用定义函数的方法是引用类的方法,以简单的语法实现相同的功能。有以下步骤:指定类型,即包含方法的类别或接口。指定方法名称。其优点包括:代码简单。类型安全。性能优异。
在 Java 使用方法引用定义函数
引用方法是一种特殊类型的方法 lambda 为了使用更简洁的语法来实现相同的功能,引用了表达式和引用方法。语法如下:
类型::方法名称
其中:
立即学习“Java免费学习笔记(深入);
- 类型:包含方法类型或接口名称
- 方法名称:引用方法名称
实战案例:比较器
假设我们有一个 Student 包括类别 name 和 age 两个属性。我们需要创建一个属性。 Comparator,根据学生的姓名进行排序。
传统方式:
Comparator<Student> byName = new Comparator<Student>() { @Override public int compare(Student o1, Student o2) { return o1.getName().compareTo(o2.getName()); } };
使用方法引用:
Comparator<Student> byName = Student::getName;
方法引用 Student::getName 等效于上述匿名内部类别 compare 方法。
实战案例:事件监听器
假设我们有一个按钮,当我们点击时,我们需要显示一条消息。
传统方式:
class ButtonListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(null, "点击按钮!"); } } JButton button = new JButton("点击我"); button.addActionListener(new ButtonListener());
使用方法引用:
JButton button = new JButton("点击我"); button.addActionListener(e -> JOptionPane.showMessageDialog(null, "点击按钮!")); // 或者,使用方法的引用: button.addActionListener(JOptionPane::showMessageDialog);
优点:
使用方法引用的好处包括:
- 简单的代码:引用方法可显著减少匿名内部类的使用,使代码更加简单易读。
- 类型安全:通过编译器强制引用方法进行类型检查,以确保只能引用兼容的类型。
- 性能:方法引用通常比匿名内部类更好,因为它们可以被引用 JVM 内联。
以上是Java中如何引用定义函数的详细内容。请关注图灵教育的其他相关文章!