Java基础知识4-继承

作者: 我相信你爱过gg | 来源:发表于2016-12-18 14:24 被阅读17次

继承也是面向对象的特征之一,使用extends关键字.

class Person {

}

class Student extends Person {

}

Student类继承Person类,Person类称为父类也称为基类,Student类称为子类也称为派生类.

继承的好处:

1.提高了代码的复用性.
2.让类与类之间产生,给多态提供了前提.

注:Java中支持单继承.不直接支持多继承.

什么时候定义继承

当类与类之间存在所属关系的时候,就定义继承.

子父类中成员变量的特点

先看一个栗子

class Person {
    public int age = 20;
}

class Student extends Person {
    public int age = 30;
    public void show() {
        System.out.println(age + "..." + age);
    }
}

输出结果为30...30
这有就表明当本类的成员变量和局部变量同名用this区分.
当子父类中的成员变量同名用super区分父类.
所以将代码改写成

class Person {
    public int age = 20;
}

class Student extends Person {
    public int age = 30;
    public void show() {
        System.out.println(this.age + "..." + super.age);
    }
}

输出结果就为30...20

this和super

this:代表一个本类对象的引用.
super:代表一个父类的空间.

覆盖

当子父类中出现成员函数一模一样的情况.例如

class Person {
    public int age = 20;
    public void show() {
        System.out.println(this.age);
    }
}

class Student extends Person {
    public int age = 30;
    public void show() {
        System.out.println(this.age);
    }
}

上面的栗子是说方法(函数)名,一模一样而不是方法体.
出现这种情况会运行子类的函数,这种现象称为覆盖操作.这是函数在子父类中的特性.

覆盖注意事项

1.子类方法覆盖父类方法时,子类权限必须要大于或等于父类的权限.
2.静态只能覆盖静态,或被静态覆盖(少见).

函数两个特性

1.重载,在同一个类中.
2.覆盖,在子类中.覆盖也称为重写或覆写.

配图

相关文章

  • Java基础知识4-继承

    继承也是面向对象的特征之一,使用extends关键字. Student类继承Person类,Person类称为父类...

  • 原来还可以这样的优秀(一)

    一、JAVA基础知识 1.1、面向对象的特征:抽象、继承、封装、多态 [if !supportLists]1)[e...

  • java基础知识—面向对象和继承

    java基础知识—面向对象和继承 一、变量 静态变量 成员变量 局部变量 详情可见 浅谈Java变量。 二、修饰符...

  • Java基础知识复盘-多线程

    一、Java基础知识复盘-多线程 1.1.线程的创建和使用 方式一:继承Thread类 创建一个类继承于Threa...

  • Java并发整理

    读Java并发专题总结 一. 基础知识 新建线程继承Thread类,重写run方法实现Runable接口实现Cal...

  • JAVA攻城狮培养计划之Java零基础入门

    步骤一、Java基础知识 基础语法、循环、数组、方法,这些知识是你进入研发世界的必备技能 步骤二、面向对象 继承、...

  • java基础

    基础知识 1、面向对象三大特点:封装、继承、多态。 2、Java规范:包==文件夹,所有单词字母均小写,规则:<域...

  • Java知识积累

    java基础知识记忆 1、类和对象,实体类等 2、类的继承和多态override和overload 重写和重载的...

  • java基础知识4-包装类型

    java的Integer和int类型的相互转换是隐形的,叫做拆箱和装箱,编译的时候执行。比如Integer字段装箱...

  • 第二十九节:Java基础知识-类,多态,Object,数组和字符

    前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,O...

网友评论

    本文标题:Java基础知识4-继承

    本文链接:https://www.haomeiwen.com/subject/cbxamttx.html