java中为什么说子类对象即是父类对象?求详解!!!

如题所述

首先,子类继承自父类,可以继承父类除私有成员以外的所有成员,本身具有父类的一切性质。
就如:学生类继承自人类。按实际情况来说,学生属于人,具有人所具有的一切特征。所以可以说:学生是人。
再者,子类对象即使父类对象。体现了java中多态的特性。多态,是面向对象的程序设计语言最核心的特征。多态,意味着一个对象有着多重特征,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。从程序设计的角度而言,多态可以这样来实现(以java语言为例):
public interface Parent(){
public void simpleCall();
}
public class Child_A implements Parent{
public void simpleCall(){
//具体的实现细节;
}
}
public class Child_B implements Parent{
public void simpleCall(){
//具体的实现细节;
}
}
//当然还可以有其他的实现
然后,我们就可以看到多态所展示的特性了:
Parent pa = new Child_A();
pa.simpleCall()则显然是调用Child_A的方法;
Parent pa = new Child_B();
pa.simpleCall()则是在调用Child_B的方法。所以,我们对于抽象的父类或者接口给出了我们的具体实现后,pa 可以完全不用管实现的细节,只访问我们定义的方法,就可以了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-05
因为子类扩展了父类的功能,父类中所有定义过的方法(method)在子类中都有,并且子类定义了其它方法,功能强过于父类。把子类当作父类来使用的意思就是说你可以使用子类来调用父类中的方法。但是反过来就不一定了。
第2个回答  2012-07-12
就等同于四边形和长方形的关系,长方形是继承与四边形,说长方形是四边形就没错啊。
父类 fl=new 子类();这样就很明显了
第3个回答  2012-07-05
子类继承了父类,就可以调用父类里的属性和方法。 你创建一个父类对象,不也是调用父类自己的属性和方法。 子类对象就是还可以调用自己的属性和方法,扩展了
第4个回答  推荐于2018-04-18
比如:动物(父类)
人(子类)
人肯定是动物对吧,动物却不一定是人,对吧
所以子类对象就是父类对象,父类对象却不一定是人
希望对你有帮助,这个理解和我们现实有点像本回答被网友采纳

java中为什么说子类对象即是父类对象?求详解!!!
首先,子类继承自父类,可以继承父类除私有成员以外的所有成员,本身具有父类的一切性质。就如:学生类继承自人类。按实际情况来说,学生属于人,具有人所具有的一切特征。所以可以说:学生是人。再者,子类对象即使父类对象。体现了java中多态的特性。多态,是面向对象的程序设计语言最核心的特征。多态,...

JAVA 对象类型转换---子类转换父类
也就是说这个子类的对象完全可以当作父类的对象来用,因为它拥有所有父类的方法,和成员 所以,在Java里面,父类的引用可以指向子类对象。 1.A a = b;因为b是B类的对象,B类继承自A类,所以A a = b;没有问题。等于 A a = new B(); 2.方法callA(A a)的参数形式就这个参数必须是A类的对...

java中的多态性如何理解子类当作父类使用,它当作父类又是如何使用,对什...
首先,我要纠正一下你的说法,java多态不是把子类当作父类使用,而是把子类对象赋给父类,当父类接受到与该子类对象类型、参数完全匹配的相关调用时能够使用该子类。其次,我想说一下java多态的通用理解为:外界调用某个对象,通过调用方式(如参数个数、类型等等)能够让该对象自行决定响应何种行为。,...

在java 中,什么叫父类,什么叫子类
父类和子类,就例如:老子和儿子,有着父子关系。而这里指的父子关系,其实也就是一种包含关系。打个比方,在我们现实生活中,学生Student是一个很大的概念,而U_Student大学生是属于学生中的一种,这里的学生即为父类,大学生即为子类。父类和子类区别在哪?学生和大学生都会有学习Study这个方法,但是...

java为什么可以使用父类接受子类对象
为了寻找父类和子类的共性。java中之所以父类对象的引用指向子类对象,就是为了寻找父类和子类的共性,这样一来,对象可以使用父类的方法,若父类的方法被子类重写了,那么对象使用的就会使子类覆盖的方法,并且对象不能使用子类的方法,而子类是对父类的一个改进和扩充。

java中为什么是先有父类后有子类呢?请高手详细地解释下原因
因为被继承后才能被称为父类,就比如你说你有了儿子才能说你是父亲了。。在内存中,因为子类拥有所有父类非private的方法和属性,所以会先产生一个父类对象。

Java 子类一旦继承父类后,子类的所有对象也都成为父类的对象了?
子类的对象实例都可以用父类的变量去引用。具体来说,假设Son类继承了Father类。则可以有:Father objRef = new Son(...);Son sonRef = (Son) objRef;我们用new关键字建造了一个新的Son类对象实例,然后用一个Father类的引用去指向它;这时我们透过objRef这个引用,看到的就好像是一个Father类对象...

JAVA中 子类与父类构造方法的关系 个人理解
编写JAVA作业时在继承的环节发现了一些错误,希望总结一些规律:(以下全部属于自己归纳,可能有问题)一句话概括就是:子类一定会调用(不是继承)父类的构造方法!即遵循一个原则:子类的构造一定是在父类已构造的基础上!这句话要分为几种情况来理解(下面只讨论父类有构造函数):子类构造函数自动调用...

关于java中用子类初始化父类对象的问题
我学Java这么长时间没听说过"溯造型"的概念,也可能是叫法不同,但是在我想你说的应该是类型转换的问题,在面向对象语言中子类对象可以直接转换变成父类对象,如Collection c =new ArrayList(),同时父类对象也可以通过强制类型转换变成父类对象,前提是父类对象的实际类型是子类对象,如:Collection c1 =...

java子类实例化时是否同时存在一个父类对象?
绝对不会产生父类对象,父类中的成员被继承到子类对象中,用指向子类对象的父类引用调用父类成员,只不过是从 子类对象内存空间中找到那个被继承来的父类成员,也就是说实质是用子类对象调用变量a,这样就可以解释成员必须通过对象调用的规定,只不过这时调用的是子类对象中的继承自父类的a(子类对象中...

相似回答