继承
来源:互联网 发布:mmd动作数据百度网盘 编辑:程序博客网 时间:2024/05/22 10:33
继承
继承: 在我们多个类存在相同的属性和方法的时候,可以将相同的部分,抽取出来,封装成一个类.这多个类如果再使用这些属性和方法的时候,就可以继承抽取出来的封装的类.这就是继承带来的好处
继承:其实描述的是类与类的一种关系,形成了父类与子类的一种关系
格式:
子类 extends父类 {}
水果类{ fruit //父类
Sting 颜色
int 数量
food (){}
}
苹果 { apple //子类
String 颜色
int 数量
食物(){
美白(){
}
}
西瓜{ watermelon //子类
String 颜色;
int 数量;
食物(){}
解暑(){}
}
想要访问父类中的成员 :使用到 super关键字
this: 当前对象
super : 表示父类存储空间的引用 (理解为父类对象)
注意事项:
1.父类私有的儿子也不能用
2.构造方法儿子也不能用,想用的话,使用 super(),直接调用父类的无参构造
好处和弊端
设计原则: 高内聚 ,低耦合
内聚:自己能干的事儿不求别人
耦合:类和类之间有关系, 但是不要太强.
构造方法的关系:
在子类创建对象的时候,子类的构造方法会默认的访问父类的无参的构造方法,
因为子类想要使用父类的属性,那么属性必须的初始化,否则无法使用.
父类成员变量私有:
子类无法通过构造方法赋值
解决:调用父类的有参构造方法 ,可以访问到父类中的私有成员
成员方法的关系
子类和父类的成员方法不同名的时候,该怎么调用就怎么调用.
子类和父类的成员方法重名的时候,用子类 !!!
方法的重写:
子类和父类的方法声明,一模一样,包括(修饰符 参数列表返回值类型 )也就覆盖
重载:
本类中方法名相同,参数列表不同,与返回值类型无关.
Override和Overload的区别?
Override:重写,子类和父类一模一样的方法,子类覆盖父类的方法
Overload:重载,本类中,方法名一样,参数列表不同的方法,跟返回值类型无关
final引入:
修饰的成员方法,该成员方法不能被覆盖
概述:
final是最终的意思
注意:
1.类 ,不能被继承
2.修饰变量的时候,变量变成了常量,无法被重新赋值
常量:字面值常量
自定义常量 --被final修饰之后 ,变量变成自定义常量
3.方法,不能被重写
总结:被final 修饰的东西不能被更改 ,它是最终
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 哇!!!找了好久Java的课程
- Number of Digit One
- mybatis ,列名不一样进行映射。
- 2012年5月SAT香港真题解析
- 前端页面遇到的问题
- 继承
- 黑马程序员——异常
- Winform 客户端向服务端发送http请求
- c#学习笔记(二):保存图片、保存DataGridView数据到本地和从本地读取到DataGridView
- VMware的虚拟机无法ping到
- GCD多线程3
- boost 1.58 一些安装前置条件
- Java面试题全集(下)
- 个人经常使用的一些Eclipse技巧