
正文
JAVA中父类的创建代码,java父类的父类super
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Java在父类中如何创建子类对象?
class A {}class B extends A{说明:B类继承A类, A 是父类,B 是子类。A a = new B(); 等号左边 就是父类的引用a, 右边就是子类B对象, 这就是把父类的引用指向子类对象。
继承后子类包含了父类的方法,直接调用就行了,不包括私有成员。
如果子类要创建对象就要对子类初始化,子类不是继承了父类吗?如果只初始化子类,你觉得子类初始化所有的东西了吗?所以父类要先初始化,再给子类初始化,这样子类就初始化完全了,才能给子类创建对象。。
上面的例子可能是会把moto这个变量传递给某个对象,而该对象的方法只会接受父类而非子类。
可以让一个父类引用指向子类对象,称为向上转型。不能让一个子类引用指向父类对象,也就是不能向下转型。
相关问答
Q1: JAVA中父类创建子类的问题
Employee m=new Manager();为父类引用子类实例。m是Manager的实例,所以m可以随意调用Manager类的方法,只需要在其父类中添加一个空的manager()方法即可(为了编译通过,没办法),运行的时候变量m是不会调用父类方法的。
如果子类要创建对象就要对子类初始化,子类不是继承了父类吗?如果只初始化子类,你觉得子类初始化所有的东西了吗?所以父类要先初始化,再给子类初始化,这样子类就初始化完全了,才能给子类创建对象。。
可以,但要注意: 如果运行时 parent 指向的实例是Child类型的, 不会有问题。 如果指向的不是Child类型的,会报异常。如果有多个子类, 逻辑上不能保证类型匹配时, 可以用 instanceof 关键字来检查, 确保类型匹配。
可以让一个父类引用指向子类对象,称为向上转型。不能让一个子类引用指向父类对象,也就是不能向下转型。
答案是C。这个问题应该是Java中的问题。当子类调用父类的构造函数的时候,就要通过(super。父类名称)来调用。所以super是指当前对象的父类。
Q2: java中,创建子类对象时,父类对象会也被一起创建么
不会产生父类对象,只是用了父类的构造函数而已,并不是用到构造函数就会产生对象,构造函数只是起对象初始化作用的,而不是起产生对象作用的,如果new A();即只有new语句才会产生父类A的对象。
java中子类的构造方法第一句默认的super()这句是调用父类无参构造方法。所以一定会构造父类的对象的。另外父类是向上抽取共性。
),所以需要你显性地去调用父类的构造方法,如果有的话就可以不用调用父类的构造方法 创建子类对象的时候,会调用父类的构造方法,会自动创建对应的父类对象,所以不会报错的。
调用初始化方法并不代表会生成对象,你的java代码中出现new关键字加上构造方法的调用,只会生成一个对象,其父类对象不会生成,所以调用父类为抽象类的构造方法完全是合理的。
Q3: 在java中,用一个类同时继承一个类和实现一个接口如何编写这个类?
是可以的,一个类只能继承一个方法,可以实现多个接口。
可以的。解释:一个类可以继承一个父类(一个儿子只能有一个父亲)。但是是可以多实现的,也就是实现多个接口,所以题目说的是正确的(java是单继承多实现)。扩展:继承implements,实现接口用extends。
为什么使用接口?两个类中的两个类似的功能,调用他们的类动态的决定一种实现,那他们提供一个抽象父类,子类分别实现父类所定义的方法。
建立一个工厂类,并定义一个接口对实现了同一接口的产品类进行创建。
java接口可以多继承。interface C extends A, B {}是可以的。一个类可以实现多个接口:class D implements A,B,C{}。但是一个类只能继承一个类,不能继承多个类:class B extends A{}。
下面是Xyz对象的图解:Xyzint Foo(int)Xyz对象在一个DLL里实现,这个DLL能作为一个分布式体系供局限很广的客户端应用。
关于JAVA中父类的创建代码和java父类的父类super的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






