在接口中我们有许多方法可以实现,其中默认方法引起了大家的注意。每次想要实现类又不知道从何下手的小伙伴,除了可以使用抽象方法外,默认方法sqrt也是不错的选择。下面我们简单对一些方法进行介绍,然后带来具体的默认方法sqrt,在这之前我们先对其它方法进行简单的理解。
1、Java 8 允许我们使用default关键字,为接口声明添加非抽象的方法实现。这个特性又被称为扩展方法。下面是我们的第一个例子:
1
2
3
4
5
6
|
interface Formula {
double calculate( int a);
default double sqrt( int a) {
return Math.sqrt(a);
}
}
|
2、在接口Formula中,除了抽象方法caculate以外,还定义了一个默认方法sqrt。Formula的实现类只需要实现抽象方法caculate就可以了。默认方法sqrt可以直接使用。
1
2
3
4
5
6
7
8
|
Formula formula = new Formula() {
@Override
public double calculate( int a) {
return sqrt(a * 100 );
}
};
formula.calculate( 100 ); // 100.0
formula.sqrt( 16 ); // 4.0
|
formula对象以匿名对象的形式实现了Formula接口。代码很啰嗦:用了6行代码才实现了一个简单的计算功能:a*100开平方根。
实例扩展:
1
2
3
4
5
6
7
8
9
|
public class Test{
public static void main(String args[]){
double x = 11.635 ;
double y = 2.76 ;
System.out.printf( "e 的值为 %.4f%n" , Math.E);
System.out.printf( "sqrt(%.3f) 为 %.3f%n" , x, Math.sqrt(x));
}
}
|
编译以上程序,输出结果为:
e 的值为 2.7183
sqrt(11.635) 为 3.411
到此这篇关于java默认方法sqrt实例用法的文章就介绍到这了,更多相关java默认方法sqrt的使用内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/java/jichu/27280.html