一、default关键字在 switch语句中的使用
首先看一个例子:
public class DefaultTest {
public static void main(String[] args) {
int a = 4;
switch (a){
case 0:
System.out.println("value is 0");
break;
case 1:
System.out.println("value is 1");
break;
case 2:
System.out.println("value is 2");
break;
default:
System.out.println("default value");
}
}
}
上边的案例中,输出的最终结果为“default value”
在这里需要注意的是:
default关键字在switch语句中使用时,需要注意的是每一个case语句后面都需要添加一个break,不然不仅仅会输出正确的值,还会把后面的所有值都输出
二、default关键字在接口中的使用
我们本来写Java接口的时候,是不能有方法体的函数,但是default关键字在接口中修饰方法时,方法可以有方法体,来看一个例子。
interface Myinterface{
public void myinterface();
default void getMessage(){
System.out.println(" Get Mesage");
}
default void Message(){
System.out.println("Mesage value");
}
}
class Message implements Myinterface{
@Override
public void myinterface() {
System.out.println("default");
}
public void Message(){
System.out.println("change message");
}
}
public class DefaultInterface {
public static void main(String[] args) {
Myinterface myinterface = new Message();
myinterface.getMessage();
myinterface.Message();
}
}
运行上面的程序得出的结果是: Get Mesage change message
总结default在接口中的使用:
default在接口中的出现改变了传统接口的实现模式,可以定义普通方法,这样如果某些方法对于某些子类都有同样的实现。运行结果符合Java多态的特性,default关键字可以让接口中的方法可以有默认的函数体,当一个类实现这个接口时,可以不用去实现这个方法,当然,这个类若实现这个方法,就等于子类覆盖了这个方法,最终运行结果符合Java多态特性。
网友评论