「java中的父类子类」java的父类子类区别
本篇文章给大家谈谈java中的父类子类,以及java的父类子类区别对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、JAVA中 子类与父类构造方法的关系 个人理解
- 2、java的抽象类和父类子类有啥区别?
- 3、java父类子类定义
- 4、JAVA语言中什么是继承?什么是父类?什么是子类?
- 5、Java父类与子类
- 6、JAVA中父类对象和子类的区别
JAVA中 子类与父类构造方法的关系 个人理解
编写JAVA作业时在继承的环节发现了一些错误,希望总结一些规律:(以下全部属于自己归纳,可能有问题)
一句话概括就是:子类一定会调用(不是继承)父类的构造方法!
即遵循一个原则:子类的构造一定是在父类已构造的基础上!
这句话要分为几种情况来理解(下面只讨论父类有构造函数):
子类构造函数自动调用super() (也可以手动加上)
但如果父类只有含参数的构造方法,那么子类必须申明一个构造方法,其中包含对super(args)的调用
一、父类含有无参构造函数
1、子类没有构造方法或者含有无参的构造方法:
这种情况,都会默认地调用super()
2、子类含有有参数构造方法:
同样会在首句默认调用super() //其实跟情况1类似
二、父类含有含参数的构造方法,不含无参数的构造方法:
子类没得选择:
子类必须申明一个构造方法(且含super的args),且方法里要首先调用super(args),否则报错。
三、父类含 含参数的构造方法和无参的构造方法:
此时子类可以选择性调用:
可以无构造方法:仍会默认调用super()
也可以有构造方法:其中会默认地调用super(),你也可以在开头加上这句,如果你不希望调用父类默认的无参方法,那么在 子类构造方法 中调用 父类含参构造方法。
上述看似情况复杂,其实基于其原则理解并不难。
综上:java为了保持 子类的构造基于父类的构造 这一原则,子类构造时必须通过某些方式首先调用父类的构造方法,否则会报错。
java的抽象类和父类子类有啥区别?
父类和抽象类:
父类是相对来说的,如果B类继承自A类,那么A类就是B类的父类,但是抽象类是一个绝对概念,只要使用abstract关键字声明的类都是抽象类。抽象类不能够直接被实例化,比如C类是抽象类,那么就不能使用new关键字声明C类的对象,只能声明抽象类子类的对象。一般来说,抽象类一定是某些类的父类(否则因为不能声明抽象类的对象,也就不能使用抽象类,当然这也不是绝对的,如果抽象类中的方法都是静态方法,不需要使用实例对象,那么也是可以的),但是父类不一定是抽象类。
子类关系:只要子类没有把从父类继承的抽象方法全部实现(注意是全部实现),就必须也变成抽象类。父类有2个抽象方法,子类只实现了父类的1个抽象方法,则子类必须是抽象类。如果子类把父类的2个抽象方法都实现了,就没必要是抽象类。判断标准就是,非抽象子类中不能有抽象方法,如果有抽象方法,子类就必须是抽象类。如果子类添加了自己的抽象方法,子类也必须是抽象类,无论父类是不是抽象类。
java父类子类定义
父类对象强转为子类对象会丢失精度.你可以这样father
father
=
new
child();这就是父类引用指向子类对象
你可以理解为child是father,但是不能理解为father是child。
第二种情况,因为是object的.object只是定义了最基本的方法、属性。
所以强转的时候,你可以认为是user是object,object是user都行。因为所有类都是object的子类,强转后,不存在丢失精度.
JAVA语言中什么是继承?什么是父类?什么是子类?
继承是指一个对象直接使用另一对象的属性和方法。我们遇到的很多实体都有继承的含义。例如,若把水果看成一个实体,它可以分成多个子实体,如:苹果、桔子等。这些子实体都具有水果的特性,因此,水果是它们的"父亲",即父类,而这些子实体则是水果的"孩子",即子类。
Java父类与子类
ls说的没错。。。。别说运行,肯定编译就出错。第一,你用super调用父类的构造方法,但是你没写父类的构造方法,就会调用默认的构造方法,也就是说super()写了=白写。第二,就算你写了父类构造方法,你使用super调用的时候传的参数也全传错了比如说这句 super(wage);应该是super(name,ID);this.wage=wage;第三,你写的earning()方法是要求传参的,但是你调用的时候都不写。。。。而如果你要传参进去的话。。。。哎,显然写成private的变量不能调用了,但是你又不写get方法。。。
JAVA中父类对象和子类的区别
子类用extends
继承父类
子类可以调用父类非私有的方法,属性
父类不可以调用子类里面特有的方法属性
子类可以重写、重载父类方法
子父类和普通的类其实区别不大,你是在理解不了就拿现实中的父亲儿子来理解就行,父亲独有的,儿子不能用,儿子独有的父亲不能用,但是其他的,父亲有的儿子不是都可以用么。
java中的父类子类的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java的父类子类区别、java中的父类子类的信息别忘了在本站进行查找喔。
发布于:2022-12-03,除非注明,否则均为
原创文章,转载请注明出处。