1.2.System.out.println()这个()里面的东西在输出之前一定要转化为字符串变量吗??
2.导出类能覆盖方法头相同的间接基类方法吗?
3.如果一个类B继承类A,若类A中有private 成员,那么类B继承了这些private成员吗?如果继承了,那么这些private成员在类B中可见吗?
4.如果类B继承类A,类B和类A有相同名字的数据成员(如均为:int a;)那么,在类B的构造器应该怎么写?
谢谢!!!
2.导出类能覆盖方法头相同的间接基类方法吗?
3.如果一个类B继承类A,若类A中有private 成员,那么类B继承了这些private成员吗?如果继承了,那么这些private成员在类B中可见吗?
4.如果类B继承类A,类B和类A有相同名字的数据成员(如均为:int a;)那么,在类B的构造器应该怎么写?
谢谢!!!
System.out.println() ()里如果是常量自动转换字符串,如果是对象调用对象的toStirng()方法。第二个问题没看太明白,楼主可以在编辑一下。第三个问题是没有继承private成员 super().a
2. 加上@Override 或者直接重写返回类型和参数数量一样就行了
3.不可见
4.你可以传参构造 给B的a 赋值
4.这个数据成员的访问级别是什么?如果是private的,那访问不了
其他同楼上
第四个补充一点:
如果B类默认构造方法-》super()就行了
如果B类构造方法要求A类的私有属性时,super().a是不行的。
怎么写?
看你B类构造方法的具体要求
当用System.out.println(……)输出一个对象时,首先调用该对象的toString()方法,将调用的结果输出,Object类的toString()方默认输出该对象在内存中的地址。通常在子类中重写toString()方法对对象的信息描述。
2、覆盖:子类定义了和父类相同的属性和方法,但重新写了方法体(即子类和父类方法的形参和返回值都相同,方法体内部不同,系统由类名区分该调用哪个方法)
3、子类可以继承父类的所有方法(构造方法除外),子类继承private方法,只是父类的private修饰符限制了访问界限,不能输出,即不能将语句显示的写出来。
4、class B{
int a;
public B(int a){
this.a=a;
}
}
类B的构造方法该怎么写怎么写.两个类可以有相同的名字的属性,不过子类中会默认调用用子类中定义的那个值,(要用自己的,也可以显式写this.a);,要调用父类的用super.a