接口与内部类
接口不是类,而是对于类的一组需求的描述,要实现功能的声明,约束,规则,等等解释,主要是解决java单继承的问题;
要实现某个功能,某个接口的类,在后面加implements,如果有继承,则在继承extends之后;然后接口,功能的定义为interface类型关键字public interface ccc{ int dddTo(); }
compare(x,y)x<y返回一个负数,相等返回零;接口里面可以有常量;
对象拷贝
实现Clonable接口;
内部类既可以访问自身的数据域,也可以访问创建他的外部类的对象的数据域;内部类对象总有一个隐式引用指向外部类;在内部类中引用外部类需要为外部类名xxx.this;
局部内部类不能用public,private修饰,作用于只现在这个声明的区域;
局部类可以访问被定义为final的局部变量;
匿名内部类,直接在new的时候创建定义;
静态内部类
只是为了将一个类藏进一个外部类中,并不引用外部类,或者只是为了区别;此时则用static修饰内部类;
代理到后面再深入的讲,简而言之就是如果一个类无法实现哪个接口,则要定义代理,在运行时实现指定类;