extends 继承
继承的作用:子类可以直接拥有父类成员;其中,私有成员和构造函数不参与继承;
java中类继承的特点:只支持单一继承和多重继承,不支持多继承(一个类不能同时继承多个类)
继承中成员变量的特点:子类中可以直接使用父类中定义的非私有的成员变量;如果子类中定义了和父类中相同的成员变量,直接调用,实际使用的是子类中定义的成员变量;要使用父类中定义的成员变量,需要使用关键字super,格式是:super.变量名;
继承中一般函数的特点:子类中可以直接使用父类中定义的非私有的一般函数;如果子类中定义了和父类中一样的函数,直接调用,实际使用的是子类定义的函数;要使用父类中定义的一般函数,需要使用关键字super,格式是:super.函数名(参数);
方法重写的概念:在继承中,如果子类中定义了和父类中一样的函数,则子类对象实际使用的是子类中定义的函数,这种情况叫做函数的重写;
子类重写父类函数需要注意的事项:1、子类中重写的函数,函数名、参数列表、返回值类型和是否静态,必须和父类中函数相等;
2、子类中重写的函数,访问权限不能比父类中函数低;
继承中子类实例化的特点:
1、子类实例化时,实际只创建子类一个对象;
2、子类对象中会为父类中的非静态成员变量分配空间;
3、在执行子类的构造函数时,必须要先调用父类的构造函数,作用是给父类的成员变量显示赋值;
4、子类调用父类的构造函数,需要使用super关键字,格式是:super(参数);并且super语句必须在子类构造函数的第一行;
5、子类构造函数中调用其他构造函数的this语句不能和调用父类构造函数的super语句共存;
super小结:super,表示父类;作用是区分子类和父类的成员,以及在子类的构造函数中调用父类构造函数;
extends 继承的更多相关文章
- JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac
记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...
- ES6 extends继承及super使用读书笔记
extends 继承 extends 实现子类的继承 super() 表示父类的构造函数, 子类必须在 constructor中调用父类的方法,负责会报错. 子类的 this 是父类构造出来的, 再在 ...
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实 现)interface(接口
匿名的内部类是没有名字的内部类.不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现
- Java,extends,继承
1. 继承的概念: 继承在本职上是特殊--一般的关系.子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法. 2. 继承中的初始化顺序: 从类的结构上而言,其内部可以有如下四种 ...
- 【Java面试题】13 Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
1.什么是匿名内部类? 内部类,存在于另一个类内部的类,而匿名内部类,顾名思义,就是没有名字的内部类. 2.为什么需要匿名内部类? 每个inner class都能够各自继承某一实现类(implemen ...
- Java基础学习-extends继承(成员变量,局部变量,成员方法)
package extend; /*面向对象-继承: * 多个类的共同成员变量和成员方法.抽取到另一个类中(父类),我们多个类就可以访问到父类的成员了 * */ class Game{ String ...
- 22.1 Extends 继承的 方法重写、@Override的使用、
/* * 继承中成员方法的特点 * 子类中没有这个方法,调用父类的 * 子类中重写了这个方法,调用子类的 * 方法的重写:在子父类当中,子类的方法和父类的完全一样,子类重写了父类的方法(覆盖),当子类 ...
- 22 Extends 继承(子类、父类)
本章主要介绍继承的 概念.方法重写(@Override注解的使用).使用场景.方法的执行顺序 /*1.继承的 概念 * 继承:多个类有共同的成员变量和成员方法,抽取到另外一个类中(父类),在让多个类去 ...
- javascript 原型继承 与class extends 继承对比
//父类 Animal function Animal (name) { this.name = name; this.sleep = function () { console.log(this ...
随机推荐
- ZOJ 3939 The Lucky Week (暴力找规律)
题意:给定一个幸运日,求第 k 个幸运日是多少. 析:由于闰年,每400肯定会循环一次,所以我们就可以先找出每400年会有多少幸运日,是2058个,然后再暴力. 代码如下: #pragma comme ...
- 【分析】浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang)
[分析]浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang) 今天无意中看到有关Invoke和BeginInvoke的一些资料,不太清楚它们之间 ...
- FormsAuthentication.RedirectFromLoginPage 登录
首先讲的这个东西是针对后台数据访问的比如我的后台是admin文件夹.那么我除非登陆成功才可以访问里面的东西.那么除了Session对象判断.和Cookies来判断还能用到FormsAuthentica ...
- centos运行netcore error:package: ‘Microsoft.AspNetCore.Antiforgery‘, version: ‘2.0.3‘
Error: An assembly specified in the application dependencies manifest (*.*.deps.json) was not found: ...
- 用Python解析XMind
本文来自网易云社区 作者:孙圣翔 转自:http://shengxiang.me/article/35/python-parse-xmind.html XMind是画思维脑图很好的工具,正好组里有个需 ...
- Docker 企业级镜像仓库 Harbor 的搭建与维护
目录 一.什么是 Harbor 二.Harbor 安装 2.1.Harbor 安装环境 2.2.Harbor安装 2.3 配置HTTPS 三.Harbor 的使用 3.1.登录Harbor并使用 3. ...
- flask-sqlalchemy中 backref lazy的参数实例解释和选择
官方文档:http://docs.sqlalchemy.org/en/rel_1_0/orm/basic_relationships.html#relationship-patterns 最近在学习到 ...
- python 数组学习
2 NumPy-快速处理数据 标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针.这样为了保存一个简单的[1, ...
- Bigdecimal 比较equals与compareTo
原文链接:https://blog.csdn.net/jixinhuluwa/article/details/72626598 1.b.equals(BigDecimal.ZERO); 该方法存在的问 ...
- thinkphp5.1composer引入第三方类库使用注意
下面以引入phpspider为例子: composer引入: composer require owner888/phpspider 这时在vender目录下会多出一个owner888目录,里面就有我 ...