接口
接口注意事项:
1.为接口中所有的方法提供具体的实现。
2.必须遵守重写的所有规则。
重写的规则:
1.子类的重写方法不能抛出更大的异常。
2.子类的重写方法不能有更小的访问范围。
父类:public void test();
子类:public void test();对
portect void test(); 错
3.保持相同的返回类型。
多继承也就是继承多个接口:
1.这些接口之间需要使用逗号来分割开。
2.如果这几个接口都有相同的方法和相同的变量,
那么相同的变量可以同过接口名.变量名 的形式来访问,
相同的方法将被其中的一个接口使用。
接口的方法的修饰符:
接口注意事项:
1.为接口中所有的方法提供具体的实现。
2.必须遵守重写的所有规则。
重写的规则:
1.子类的重写方法不能抛出更大的异常。
2.子类的重写方法不能有更小的访问范围。
父类:public void test();
子类:public void test();对
portect void test(); 错
3.保持相同的返回类型。
多继承也就是继承多个接口:
1.这些接口之间需要使用逗号来分割开。
2.如果这几个接口都有相同的方法和相同的变量,
那么相同的变量可以同过接口名.变量名 的形式来访问,
相同的方法将被其中的一个接口使用。
接口的方法的修饰符:
接口中变量的修饰符:public static final
接口中方法的修饰符:public abstract
例:用接口编写一个加减乘除计算,分别使用引用对象调用方法和接口类型引用调用。
//定义一个加法的接口
interface Jia{
int jia(int a,int b);
}
//减法接口
interface Jian{
int jian(int a,int b);
}
//乘法接口
interface Cheng{
int cheng(int a,int b);
}
//除法接口
interface Chu{
int chu(int a,int b);
}
//继承接口
public class MTest implements Jia,Jian,Cheng,Chu{
@Override
public int chu(int a, int b) {
return a/b;
}
@Override
public int cheng(int a, int b) {
return a*b;
}
@Override
public int jian(int a, int b) {
return a-b;
}
@Override
public int jia(int a, int b) {
return a+b;
}
}
//测试类
public class MathTest {
public static void main(String[] args) {
MTest mt=new MTest();
//引用对象调用方法
System.out.println("使用引用对象调用方法");
System.out.println("a+b="+mt.jia(15,10));
System.out.println("a-b="+mt.jian(15,10));
System.out.println("a*b="+mt.cheng(15,10));
System.out.println("a/b="+mt.chu(15,10));
//接口类型引用调用
Jia Mjia=mt;
Jian Mjian=mt;
Cheng Mcheng=mt;
Chu Mchu=mt;
System.out.println("使用接口类型引用调用");
System.out.println("a+b="+Mjia.jia(15,10));
System.out.println("a-b="+Mjian.jian(15,10));
System.out.println("a*b="+Mcheng.cheng(15,10));
System.out.println("a/b="+Mchu.chu(15,10));
}
}