接口基础语法
类和类之间叫做继承,通过extends实现
类与接口之间叫做实现,通过implements实现,可以将“implements”看做“extends”
public class Test
{
public static void main(String[] args) {
//MyMath.PI = 3; //报错:因为PI是常量,无法为最终变量PI分配值
MyMath m = new MyMathImpl(); //正常运行,面向接口的编程,跟面向对象的编程一样,
// 虽然MyMath无法实例化,但是可以通过赋值操作获取MyMathImpl的方法
System.out.println(m.sub(5,2));
}
}
/*
class MyMathImpl implements MyMath //报错:Test.MyMathImpl不是抽象的, 并且未覆盖Test.MyMath中的抽象方法sub(int,int),接口中的方法必须实现
{
}
*/
class MyMathImpl implements MyMath //必须实现接口中的方法
{
public int sum(int a,int b) //public不能删除,如果删除则报错:正在尝试分配更低的访问权限; 以前为public(接口的权限是public)
{
return a+b;
}
public int sub(int a,int b)
{
return a - b;
}
}
interface MyMath{
double PI = 3.1415926;
int sum(int a,int b);
int sub(int a,int b);
}