继承概述
继承是面向对象三大特征之一。可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法
继承格式
package com.itheima_01; public class Fu { public void show(){ System.out.println("show方法被调用"); } }
package com.itheima_01; public class Zi extends Fu{ public void method(){ System.out.println("method方法被调用"); } }
package com.itheima_01; /* * 测试类 * */ public class Demo { public static void main(String[] args) { //创建对象,调用方法 Fu f=new Fu(); f.show(); Zi z=new Zi(); z.method(); z.show(); } }
继承中子类的特点:
继承的好处和弊端
继承好处
继承弊端
什么时候使用继承?
继承中变量的访问特点
package com.itheima_02; public class Fu { public int age=40; }
package com.itheima_02; public class Zi extends Fu{ public int hight=175; public void show(){ System.out.println("年龄:"+age); System.out.println("身高:"+hight); } }
package com.itheima_02; /* * 测试类 * */ public class Demo { public static void main(String[] args) { Zi z=new Zi(); z.show(); } }
在子类方法中访问一个变量
super
package com.itheima_03; public class Fu { public int age=40; }
package com.itheima_03; public class Zi extends Fu{ public int age = 30; public void show() { int age = 20; System.out.println(age); //我要访问本类的成员变量age,怎么办呢? System.out.println(this.age); //我要访问父类的成员变量age,怎么办呢? System.out.println(super.age); } }
package com.itheima_03; /* 测试类 */ public class Demo { public static void main(String[] args) { Zi z=new Zi(); z.show(); } }
super关键字的用法和this关键字的用法相似
关键字 | 访问成员变量 | 访问构造方法 | 访问成员方法 |
this |
this.成员变量 访问类成员变量 |
this(...) 访问本类构造方法 |
this.成员方法(...) 访问本类成员方法 |
super |
super.成员变量 访问父类成员变量 |
super(...) 访问父类构造方法 |
super.成员方法(...) 访问父类成员方法 |
原文:https://www.cnblogs.com/fangbin-caoqiaomeng/p/14379699.html