继承

来源:互联网 发布:台军反攻知乎 编辑:程序博客网 时间:2024/05/22 13:46

继承:

1,提高代码复用性,
2,类与类之间产生了关系,就产生多态特性。

注意:千万不要为了获取其他类的功能而代码继承。必须类与类之间所属关系才可以继承。

java类只能单继承不能多继承,防止隐患,但是接口可以实现多继承。
查阅父类功能,创建子类对象使用功能。

类中的成员:
变量、函数、构造函数。

1,变量:如果子类中出现私有的同名成员变量时,
子类要访问本类的变量,用this。
子类访问父类中的同名变量,用super。

super的使用和this使用几乎相同。
this代表的是本类对象的引用。
super代表父类的对象。

2,子父类中的函数。
覆盖(重写):
子类覆盖父类,必须保证子类权限大于等于父类权限,才可以覆盖,否则编译失败。
静态只能覆盖静态,静态不能覆盖非静态。

重载:只看同名函数的参数列表。
重写:子父类方法要一模一样。 保留原有功能在其进行功能的扩展。

3,子父类的构造函数

为何子类一定要访问父类中的构造函数呢?
 因为父类中的数据子类可以直接获取,所以子类对象在建立时,需要看父类如何对数据进行初始化。
 所以子类在对象初始化时,要先访问一下父类的构造函数。
 如果要访问父类中指定的构造函数,通过手动定义super()语句方式来指定。
注意:super语句一定定义在子类构造函数第一行。

构造函数中要么有this(),要么有super();

子类的实例化过程。
结论:
子类所有的构造函数,默认都会访问父类空参数构造函数。
因为子类的构造函数默认第一行有一条隐式的语句 super();

当父类中没有空参数的构造函数时,子类必须手动通过super语句形式指定访问父类中的构造函数。
子类的构造函数第一行 可以手动指定this语句来访问本类中的构造函数。
子类中至少会有一个构造函数会访问父类中的构造函数。

隐式构造函数执行结果
class Fu{
 Fu(){
  System.out.println("fu");
 }
 Fu(int x){ 
 }
}
class Zi extends Fu{
 Zi(){
  
  //super();父类隐式引用
  System.out.println("zi");
 }
 Zi(int x){
  //super();父类隐式引用
  System.out.println("zi..."+x);
 }
}
public class ZiFuExtends {
 public static void main(String[] args) {
  
  Zi z=new Zi();   //fu zi
  Zi z1=new Zi(1);  //fu  zi...4
 }
}
-----------------------------------
当父类中没有空参数的构造函数时,子类必须手动通过super语句形式指定访问父类中的构造
class Fu{
 
 Fu(int x){
 }
}
class Zi extends Fu{
 
 Zi(){
  super(5);  //手动指定super(5);
  System.out.println("zi...");
 }
}
public class ZiFuExtends {
 public static void main(String[] args) {
  
  Zi z1=new Zi();   //zi....
 }
}
----------------------------------------------------
子类的构造函数第一行 可以手动指定this语句来访问本类中的构造函数:
class Fu{
 
 Fu(){
  System.out.println("fu....");
 }
 Fu(int x){
  System.out.println("fu.."+x);
 }
}
class Zi extends Fu{
 
 Zi(){
  
  this(4);//super();  //手动指定本类的构造函数this();
  System.out.println("zi...");
 }
 Zi(int x){
  //super();
  System.out.println("zi.....");
 }
}
public class ZiFuExtends {
 public static void main(String[] args) {
  
  Zi z1=new Zi();
  //fu.... zi... zi.....
 }
}

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 学游泳时站不稳怎么办 水呛到了不停打嗝怎么办 来月经前游泳了怎么办 快来完事游泳了怎么办 游泳时来月经了怎么办 经期第7天游泳了怎么办 来月经已经游了泳怎么办 月经来了要游泳怎么办 三个月宝宝趴着不会抬头怎么办 我的月经不完怎么办 游泳时怎么办能浮出水面 游泳时眼镜起雾怎么办 练瑜伽手臂变粗怎么办 孕妇喝了芬达怎么办 宫口开了但头高怎么办 整天坐着肚子越来越大怎么办 坐久了屁股变大怎么办 屁股久坐的黑印怎么办 练瑜伽小腿变粗怎么办 练瑜伽腿粗了怎么办 练完瑜伽腿粗怎么办 肚子大屁股大腿粗怎么办 甲状腺偏大弥漫性欠均匀怎么办 大腿后侧拉伤了怎么办 腰和臀部都疼怎么办 瑜伽后弯后腰疼怎么办? 吃了大蒜肝痛怎么办 练瑜伽前躯不行怎么办 月子里碰冷水了怎么办 月子手碰凉水了怎么办 月子里碰了冷水怎么办 顺产后下面会痛怎么办 产后肚子瘦不下来怎么办 出月子后臀部很疼怎么办 做月子时臀部疼怎么办 月子臀部大腿疼困怎么办 产后抱孩子腰疼怎么办 剖腹产后5年小肚子很大怎么办 压力大工作忙瘦了怎么办? 哺乳乳房一大一小怎么办 哺乳期乳房一大一小怎么办