java中,子类能调用父类中所有方法、对象吗?是不是父类也能调用子类所有……?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中,子类能调用父类中所有方法、对象吗?是不是父类也能调用子类所有……?相关的知识,希望对你有一定的参考价值。

1、类的继承知识点
(1)java不支持多重继承,也就是说子类至多只能有一个父类
(2)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法
(3)子类中定义的成员变量和父类中定义的成员变量相同时,则父类中的成员变量不能被继承
(4)子类中定义的成员方法,并且这个成员方法的名字,返回类型,及参数个数和类型与父类的某个成员方法完全相同,则父类的成员方法不能被继承。
参考技术A 不能哦,而且子类也不一定能调用所有的父类方法,子类不能调用父类的私有方法哦 参考技术B 父类私有的方法属性(用private定义的),子类不可以调用,子类扩展的属性和方法(不同于父类的),父类不能调用! 参考技术C 子类可以调父类的,父类不可以调子类的。
class A
funa();


class B extends A
funb();


A a;
B b;
b.funa();//正确
a.funb();//错误
参考技术D 子类能调用父类非私有的方法和对象
父类不能调用子类的任何方法和对象本回答被提问者采纳

如何在java中子类中父类的对象如何调用父类的方法?

对于有继承关系的类,子类可以通过这个关键字调用父类中的方法。
比如:super.query();
此句话的意思是调用父类中的非私有方法query。
一般的用super关键字,调用类中的父类中重载构造方法。
比如:父类有个构造方法public
A(),同时又写了一个重载的构造方法public
A(String
name);那么,在子类中可以使用super(name)指明调用父类的哪个构造方法进行实例化父类对象。
大概就是这样的!
参考技术A 如果该方法没有被子类及其父类重写的话,直接用子类对象就可以调用了,如:child.getName();
只要两者有一个重写了,就必须用super.super来调用:super.super.getName();
class
A
public
void
print()
System.out.println("I
am
class
A.");

public
void
print(String
name)
System.out.println("Hello
"+name+",
I
am
class
A.");

class
Aa
extends
A
public
void
printInfo()
super.print("SubClass");

参考技术B 你继承都没继承
访问个毛
class
B
extends
A

如果B类没有相同的字段,则直接访问
如果有相同字段,则覆盖
当被覆盖之后,可用super访问

以上是关于java中,子类能调用父类中所有方法、对象吗?是不是父类也能调用子类所有……?的主要内容,如果未能解决你的问题,请参考以下文章

java中私有的属性、静态成员可以被子类继承吗?

JAVA子类继承父类后是不是有父类的属性

Object在其子类中,为啥不能调用clone()???

请教,父类中如何调用子类中的虚函数

如何在java中子类中父类的对象如何调用父类的方法?

java super关键字