Java入门之继承(上)

作者: kakarotto | 来源:发表于2018-07-30 22:11 被阅读3603次

继承

概念:

  • 一种类与类之间的关系

  • 使用已存在的类的定义作为基础建立新类

  • 新类的定义可以增加新的数据或功能,也可以用父类的功能,但不能选择性地继承父类,需全部把父类的东西继承过来。

  • 子类只能继承父类非私有成员

特点:

1.利于代码复用

2.缩短开发周期

语法:

1.使用extends实现继承

2.单一继承,只能有一个父类

/*
* Dog 为子类 又名派生类
* Animal 为父类 又名 超类、基类
*/
class Dog extends Animal{
  
}

方法重载要求:

1.同一个类中

2.方法名相同,参数列表不同(参数顺序 、个数 、类型)

3.方法返回值、访问修饰符

4.与方法的参数名无关

方法重写要求:

1.有继承关系的子类中 ,子类重写父类方法

2.方法名,参数类型、顺序、个数 都要与父类的方法相同

3.方法返回值类型与父类兼容就可以,允许发生改变

4.访问修饰符,访问范围需要大于等于父类的访问范围

5.与方法的参数名无关

访问修饰符

  • 公有的 public (允许任意位置使用)

  • 私有的 private (只允许在本类中使用)

  • 受保护的 protected (允许在当前类、同包子类/非子类、跨包子类调用、跨包非子类不能允许)

  • 默认 (允许在当前类 同包子类调用;跨包子类/非子类不允许调用)

super关键字

super代表父类对象的引用,通过super访问父类的成员

父类的构造方法不允许被继承,不允许被重写,但是会影响子类实例化过程

继承后的初始化顺序(子类对象的实例化过程)

父类静态成员 → 子类静态成员 → 父类对象构造 → 子类对象构造

  • 子类的构造的过程中必须调用其父类的构造方法

  • 如果子类的构造方法中没有显示的标注,则系统默认调用父类的无参构造方法

  • 如果子类的构造方法中既没有显示标注,且父类中没有无参的构造方法,则编译错误

  • 使用super调用父类指定的构造方法,必须在子类构造方法的第一行

public Cat(String name, int age){
  super(name, age);
}

this 和 super

this : 当前类对象的引用

  • 访问当前类的成员方法、成员属性

  • 访问当前类的构造方法

  • 不能在静态方法中使用

super

  • 访问父类的成员方法、成员属性

  • 访问父类的构造方法

  • 不能在静态方法中使用

this和super不能同时使使用

在继承(下)中会学习更深入的知识,敬请期待,很快更新。

相关文章

  • Java入门之继承(上)

    继承 概念: 一种类与类之间的关系 使用已存在的类的定义作为基础建立新类 新类的定义可以增加新的数据或功能,也可以...

  • Java入门之继承(下)

    Object类 Object类是所有类的父类 一个类没有使用extends关键字明确标识继承关系,则默认继承Obj...

  • JAVA入门-面向对象之继承

    JAVA入门-面向对象之继承 一、继承 继承是指一个类的定义可以基于另外一个已经存在的类,即子类基于父类,从而实现...

  • java培训专家介绍java的特性之:继承

    java培训专家介绍java的特性之:继承 什么是继承?java特性继承又是什么?在线教育平台专家为你解答! 多个...

  • 2018年最新Android开发学习知识点和路径总结

    程序设计 java 基本语法(如继承、异常、引用、泛型等) Java核心技术 卷I(适合入门) 进阶:Effect...

  • Java之继承

    继承的概念 继承的格式 继承示例 继承中成员变量的访问特点 继承中成员方法的访问特点

  • Java之继承

    继承 关键字:extends继承的作用:为了实现代码复用。对于所有子类,将公有的属性和方法定义在父类中,子类通过继...

  • java之继承

    一、基础 引入类的继承的作用:代码重用 语法:[修饰符列表] class 子类名 extends 父类名{类体;}...

  • Awesome Java

    基础 Java 入门与实践 Java 语法清单 Java 8 系列之重新认识 HashMap Java 浮点数精确...

  • java基础概念

    java_basic 介绍 java基础 三大特性之—封装 三大特性之—继承 三大特性之—多态 抽象 接口 深拷贝...

网友评论

    本文标题:Java入门之继承(上)

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