Java的三大特征------继承
来源:互联网 发布:mac系统怎么安装office 编辑:程序博客网 时间:2024/05/22 01:01
Java的三大特征——继承
为了提高代码的复用性,对类进行抽象,实现对现实世界更好的建模。
子类继承父类可以获得父类所有的属性和方法(除了构造方法),在Java中没有多继承,只有单继承。
在Java中如果类的后面没有写extends,则默认继承Object类,所有类的根基类都是Object,
- 方法的重写,
在类中,如果在父类中继承的方法,不满足自己本身所需要的,可以重写该方法,必须要有相同的方法名称,返回类型和参数列表。下面是重写的代码。
public class TestOverride { public static void main(String[] args) { Chicken chicken = new Chicken(); chicken.eat(); }}class Animal { public void eat() { System.out.println("Animal.eat(我要开始 狂吃狂吃 吃食物了)"); }}class Chicken extends Animal { @Override public void eat() { System.out.println("Chicken.eat(一点点点点的吃东西)"); } //这里是重载eat方法 public void eat(String food) { System.out.println("Chicken.eat(类似于方法的重载)" + food); }}
2.super关键字
在普通方法中,指向的是直接父类的方法,
1.在构造方法中,调用父类的构造函数,且必须在第一行调用,如果不写super(),则编译器会在第一行默认加上,所以这里写不写都可以,
2.创建对象的时候,永远都是先创建父类,在创建子类。
3.一个子类中包含了它的父类,他会把整个继承链的类都是创建一次。
下面是super使用的代码
public class TestSuper { public static void main(String[] args) { Pine pine = new Pine(1000); pine.green(); System.out.println(pine.age); }}class Tree { public int age; public Tree(String str) { age = 1000; System.out.println("Tree.Tree(我是小树的构造器)"); } public void sleep() { System.out.println("Tree.sleep(小树在睡觉,请勿打扰)"); } public void green() { System.out.println("Tree.green(春天到了,小树被绿了)"); this.sleep(); } @Override public String toString() { return "小树的toString"; } public void abc() { }}class Pine extends Tree { public int age; public Pine(int num) { super("abcd"); age = 998; System.out.println("Pine.Pine(我是松树的构造器)"); } @Override public void sleep() { super.abc(); System.out.println("Pine.sleep(松树在睡觉)"); }}
这段代码的输出结果
Tree.Tree(我是小树的构造器)
Pine.Pine(我是松树的构造器)
Tree.green(春天到了,小树被绿了)
我被调用了
Pine.sleep(松树在睡觉)
在这里 前两句代码是构造函数里面的两句输出语句,证明了在创建子类的前面,先创建了父类。这里面还可以分析super,this,所指向的对象。
0 0
- Java的三大特征------继承
- java、面向对象的三大特征封装、继承、多态
- java面向对象的三大特征:封装,继承,多态
- JAVA的三大特征:封装,继承,多态
- java面向对象的三大特征:封装-继承-多态
- java面向对象的三大特征:封装,继承,多态
- Java三大特征:封装、继承、多态
- Java的三大特征
- Java的三大特征
- 面向对象三大特征:继承、继承的特征、继承的概念
- java三大特征之封装,继承,多态浅析
- java面向对象三大特征:封装、继承、多态
- Java面向对象三大特征:封装、继承、多态
- java面向对象三大特征之继承
- Java 面向对象三大特征之继承
- Java面向对象三大特征:封装、继承、多态
- Java三大特征之继承,方法重写
- Java面向对象三大特征之继承
- 零基础正则表达式学习
- C++ - PAT - 1049. 数列的片段和(20)
- 第七课:Spark 机器学习内幕剖析
- h5中的30种选择器
- ListView 嵌套gridview
- Java的三大特征------继承
- Android-第一行代码学习笔记——activity
- CodeBlocks的下载安装、配置、简单编程
- 最坏情况下,合并两个大小为n的已排序数组所需要的比较次数为
- 杭电2553N皇后问题(dfs)
- 链表应用3:元素位置互换之移位算法
- java线程死锁问题
- Mac 输入法候选词框消失的解决方法
- 版本更新