21、面向对象的特征有:

        封装:私有化属性,一个get(); 一个set(); 。

        继承:子类继承父类,子类只可以继承父类可用的属性和方法。继承可以节省代码量,维护方便。

        多态:指同一个实体同时具有多种形式。同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。

        抽象:抽象分为抽象类和抽象方法。抽象类:无法被实例化,只能被继承。抽象方法:抽象方法只能位于抽象类中,且无代码块,且必须在子类中被实现,除非子类也是抽象                        类,则可以不实现。

22、java中实现多态的机制是:父类声明对象,子类实例化对象(里氏替换原则)。

23、abstract class 和 interface 的区别: 抽象类中可以有构造方法,接口中不能有构造方法。抽象类中可以有普通成员变量,接口中没有普通成员变量。抽象类中可以包含静态方法,接口中不能包含静态的方法。一个类可以实现多个接口,但只能继承一个抽象类。

24、abstract 的method 不可以是static ,因为抽象的方法是要被子类实现的。

25、在类里面写一个类,类里面的这个类则为内部类。

26、内部类可以引用其他包含类的成员。但是如果是静态内部类,则静态的只能调用静态的。

27、匿名内部类可以继承其他类,可以实现其他接口。

28、String 不是基本的数据类型,String是类。

29、java 中的数据类型:值类型:int 、 byte、 char、 long、 float、double 、 short 、 boolean 。 引用类型: 类、接口、数组。

30、String 类是不可被继承的,因为String 被 final 修饰了。