接上一节……
定义可以上网接口INet,包含network,connection方法,和常量TEMP:
- 接口中抽象方法可以不写abstract关键字,会默认是抽象方法
- 访问修饰符默认public
- 当类实现接口时,需要去实现接口中的所有抽象方法,否则需要将该类设置为抽象类
package java_tel;
//接口访问修饰符:public 默认
public interface INet {
/**
* 接口中抽象方法可以不写abstract关键字,会默认是抽象方法
* 访问修饰符默认public
* 当类实现接口时,需要去实现接口中的所有抽象方法,否则需要将该类设置为抽象类
*/
void network();
void connection();
//接口中可以包含常量,默认public static final
//public static final int TEMP = 20;
int TEMP = 20;
}
在测试类PhoneTest中测试常量信息的输出:
System.out.println(INet.TEMP);
INet net = new SmartWatch();
System.out.println(net.TEMP); //20?30?
//如果实现类中存在和接口中同名的信息,当在程序中使用接口引用指向实现类时,打印输出的依然是接口自己定义的信息。
SmartWatch sw = new SmartWatch();
System.out.println(sw.TEMP); //如果调用的是实现类的实例,通过实现类的对象来调用TEMP,就会输出实现类内部的信息。
输出结果和上方代码的注释保持一致:
20
20
30