当前位置:首页>开发>正文

java中的继承 java中怎么区别类的继承?

2023-04-20 09:14:39 互联网 未知 开发

 java中的继承 java中怎么区别类的继承?

java中的继承

当然有

father a = new son 是属于父类引用指向了子类对象,java把这种把子类对象赋给父类引用变量称之为向上转型

区别:给你举个例子

比如,father类有一个eat()方法,son类继承了father类,也就拥有了eat()方法,并同时定义了自己的方法drink().如果是father a = new son ,则你只能调用属于father 的方法eat(),而不能调用son的方法drink().也就是说虽然变量a 指向了对象 son ,但由于它编译时的类型是father,所以它不能调用属于son的方法,尽管变量a运行时的类型是son.

而son a = new son中的a则可以调用属于它自己的方法drink().和它继承的方法eat(),因为a 这个引用变量编译时的类型和运行时的类型都是son.

再说的大众些,father a = new son 是以父亲的角度看儿子,由于父子之间有继承关系,你是创造了一个儿子对象并把它当父亲用,所以你只能调用属于父亲的方法,而son a = new son就是你是创造了一个儿子对象并把它当儿子,所以你可以调用属于儿子的方法和他所继承父亲的方法

以后你理解了多态以后,就好理解这个问题了

java中怎么区别类的继承?

JAVA容许类地继承,而且是单继承,也就是一个子类只可以有一个直接父类(基类),但是这个子类的父类有可能是另一个类的子类,例如A extends B,B extends C,A也就拥有了C的可见成员与方法,这是类继承的传递性。但是C 中容许一个子类可以有多个基类,是容许多继承的,例如class A:public B,public C,这虽然能更好的描述显示世界,但是也让问题更复杂。JAVA通过类继承的传递性实现了C 的多继承的功能。
java中继承可以发生在子类和父类中这是和c 的不同点吗。所谓的继承就是一个类继承类另一个类,拥有了父类(c 中的基类)的可见成员与可见方法,继承只能发生在子类和父类中

JAVA中类的继承有什么优点?



1、继承关系是传递的。若类C继承类B,类B继承类A,则类C既有从类B那里继承下来的属性与方法,也有从类A那里继承下来的属性与方法,继承来的属性和方法尽管是隐式的,但仍是类C的属性和方法。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段;
2、继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系;继承提供了软件复用功能。这种做法能减小代码和数据的冗余度,大大增加程序的重用性;提供多重继承机制。出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承。

基本说明:
1、与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java软件必须相互兼容;
2、Java平台是基于Java语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。java的应用已十分广泛。Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。80%以上的高端企业级应用都使用JAVA平台。JAVA是成熟的产品,已经有10年的历史。