1、子类可以有多个父类吗?
答:不可以,java不能多继承。
2、java.long包中的Object类是所有其他类的祖先类吗?
答:Object类在java中,Object类是所有类的父类,也就是说java的所有类都继承了Object。或直接,或间接都继承了Object。
注:如果Java中声明的类,没有显示的声明其父类的时候,则默认继承java.langObject。 Object可以显式继承,也可以隐式继承。
3、如果子类和父类不在同一个包中,子类是否继承父类的友好成员?
答:不继承。
4、子类怎样隐藏继承的成员变量?
答:声明与父类同名的成员变量。
5、子类重写方法的规则是怎样的?重写方法的目的是什么/
答:子类重写的方法的返回值类型,方法名,参数类型,顺序,个数都要与父类继承的方法相同,而且访问修饰符的限定范围大于等于父类方法。目的是可以父类的状态和行为改变为自身的状态和行为,实现多态。
6、父类的final方法可以被子类重写吗?
答:不可以。
7、什么类中可以有abstract方法?
答:被abstract修饰的类。接口中也可以有abstract方法。
8、对象的上转型对象有怎样的特点?
答:
1.上转型对象不能操作子类新增的成员变量,这意味着他失去了这部分属性。
2.上转型对象不能调用子类新增的方法,因此他失去了一些行为。
3.上转型对象可以访问子类继承和隐藏的成员变量,这与父类对象相同。
4.上转型对象可以调用子类继承的方法或子类的重写方法。当对象的上转型对象调用这些方法时,其作用与子类对象调用这些方法相同,因为上转型对象的操作等价于子类对象调用的这些方法。
5.如果子类重写父类的某个实例方法,当对象的上转型调用这个实例方法时,他一定会调用子类重写的实例方法。
6.上转型对象可以强制转换为一个子类的对象,这样该子类对象就具备了子类的所有属性和功能。
9、一个类的各个子类是怎样体现多态的?
答:通过重写方法。
10、面相抽象编程的目的和核心是什么?
答:面向抽象编程的目的是为了应对用户需求的变化,将某个类中经常因需求变化而改动的代码从该类中分离出去。面向抽象编程的核心是让类中每种可能的变化对应的交给抽象类的一个子类去负责,从而让该类的设计者不去关心具体表现,避免所设计的类依赖于具体的实现。面相抽象编程使设计的类容易应对用户的需求变化。