2016-11-19 继续努力
1.接口
1.接口只有抽象方法,它比抽象类还要抽象,接口是彻彻底底的抽象
2.接口是抽象方法和常量的属性集合
3.接口只能够包含抽象方法和常量,不能够有变量/初始化块/构造器
4.接口里面方法默认的修饰符为public abstract,而默认的变量的修饰符为public static final
注意:
***类和接口的首字母一定要大写***
1.接口的修饰符只有两种:默认和public
2.接口内的变量会被设置为公有的静态的和最终的字段
例如:public static final int i=6;
3.接口是没有class的
例如:public interface Test{}
2.多继承
1.这些接口需要用逗号来分隔开
2.如果这几个接口都有相同的方法和相同的变量,那么相同的变量可以用过接(口名.变量/方法)的形式来访问
3.相同的方法将被其中的一个接口使用(不关心是用哪个接口的方法)
问题:
接口类型的引用没太看懂是什么意思??????
例如:
public class MathTest { public static void main(String[] args) { ITest it = new ITest(); System.out.println("a+b=" + it.jia(6, 8)); System.out.println("a-b=" + it.jian(6, 8)); System.out.println("a*b=" + it.cheng(6, 8)); System.out.println("a/b=" + it.chu(6, 8)); /* * 接口类型的引用????不是太懂 */ Jia mJia=it; Jian mJian=it; Cheng mCheng=it; Chu mChu=it; System.out.println("a+b="+mJia.jia(6, 8)); System.out.println("a-b="+mJian.jian(6, 8)); System.out.println("a*b="+mCheng.cheng(6, 8)); System.out.println("a/b="+mChu.chu(6, 8)); } } 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); }
3.内部类
定义:
Outer o = new Outer();
Outer.Inner io = o.new Inner();
io.print();