2
class:Person;Name:lixiaolong;age:33
class:Student;Name:no name;age:0;majority:software technology
这是执行结果,第一个count为2是因为Person类的无参构造方法Person()被执行了两次,第二个结果不用解释new Person的时候调用它的有参构造方法给变量赋的值,第三个结果因为new Student的时候调用了Person的无参构造从始至终没有给变量赋过值。
我想你不明白的知识点应该是:在子类的构造方法中必须得调用父类的构造方法,如果父类有无参构造方法,则子类中可以省略super(),因为系统会默认调用了父类的无参构造方法,如果父类中只有有参构造方法,则子类中必须显示的调用,形式:super(参数)。希望你能看懂。
首先确信你的Class A是public的,如果不是public的,那要在同一包内,如果是private的,那要在同一个文件内。
如果是public的,但是属于是不同的包,需要import指定的包。
懂了嘛?这个很基础,不需要高手的。
class A
{
int x=12;//被继承
static double y=34;//被继承
final int xx=123;//被继承,不能修改xx的值,一经初始化就被看作常量使用
private float r=120f;//不能被继承
A()//不能被继承
{
//====构造方法体
}
public void f(){}//被继承
protected void d(){}//被继承
private void k(){}//不能被继承
final void gg(){}//被继承,不能被覆盖
void w(){}//被继承
//也就是说构造函数和被关键字private修饰的东西都不能被继承
}
class B extends A
{
//========
//=======
//A的类体
}
以上就是关于java类的继承全部的内容,包括:java类的继承、java中,怎样继承其他java文件中的类、java中有什么子类继承父类的实例等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)