//含有抽象方法的类必须声明成抽象类
//抽象类不能被实例化,它只能被继承,然后实例化它的子类
//抽象类中可以有非抽象方法
/*
* 模板是开发的简单规则:
* 1、父类只定义一些简单的规则,不去实现,由子类去实现
*/
//一个类继承一个抽象类,必须实现其所有抽象方法,否则这个子类仍为抽象类
接口(interface):只能定义成public,要实现一个接口必须实现其所有的抽象方法,接口是一个特殊的抽象类,接口中只有常量和抽象方法,抽象方法不能定义private,实现类中的方法的修饰符一定要高于接口中的抽象方法的修饰符
//内部类的实例化方式(外部类的句柄+.new)
/*内部类的成员变量如果没有与外部类的成员变量同名,不管外部类的成员变量定义多么严谨,
内部类都会使用外部类的成员变量
内部类调用同名的外部成员变量的方法:类名.this.成员变量
创建静态内部类:在本类中直接用new或(外部类名.静态内部类 句柄 = new 外部类名.静态内部类)
局部内部类(方法中定义的类):可以直接访问外部类的成员变量
什么时候使用匿名内部类:
1、当类特别小时,不超过5行,
2、类在定以后马上就用到
3、只用到类的一个实例
4、对于接口或者抽象类如果方法比较少
匿名内部类的使用注意事项:
1、匿名内部类没有构造方法
2、匿名内部类不可以有静态成员变量、方法和类
3、匿名内部类不能用public、protected、private、static修饰
4、只能创建一个匿名内部类的实例
5、一个匿名类一定是在new的后面,用其隐含的实现一个接口或者是继承一个类
6、因为匿名内部类也是局部内部类,所以所有的局部内部类的限定都对其有效
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。