Java关键字this与super的用法详解
简介:
1、this表示当前类对象的默认引用,在每个实例方法内部,都有一个this引用变量,指代调用这个方法的对象。
2、super在一个类中用来引用其父类的成员,它是在子类中访问父类成员的一个桥梁。
继承关系下子类的this关键字:
1) this(paras…); 访问其他的构造方法
2) this.xxx; 访问类中的成员变量xxx
3) this.yyy(paras…); 访问类中的成员方法yyy
4) this; 当前类对象的引用
对第一种,无论子类是否有相同参数的构造方法,this(paras…);访问的始终是父类中的构造方法。
对第二种,无论子类是否有覆盖了该成员变量,this.xxx;访问的始终是父类中的成员变量。
对第三种,如果子类重写了该成员方法,则this.yyy(paras…),访问的是子类的成员方法;如果子类没有重写该成员方法,则this.yyy(paras…),访问的是父类的成员方法。
对第四种,this始终代表的是子类的对象。
super关键字:
- 在子类的构造方法中,如果没有通过super关键字显式调用父类的有参构造方法,也没有通过this显式调用自身的其他构造方法,系统会默认调用父类的无参构造方法。
- 在子类的构造方法中,如果通过super关键字显式调用父类的有参构造方法,则执行父类相对应的构造方法,不执行父类的无参构造方法。
- 子类的构造方法名肯定和父类的构造方法名不一样呀,如果没有通过super关键字显式调用父类的有参构造方法,系统当然会默认调用父类的无参构造方法啦!
- Super调用构造方法必须放在构造方法的第一句。
参考文章:Java this 关键字用法
Java关键字this与super的用法详解相关推荐
- java 函数fun_c语言中fun用法详解_后端开发
Java Dao层的作用_后端开发 Dao层叫数据访问层,属于一种比较底层,比较基础的操作,可以具体到对于某个表或某个实体的增删改查,其Dao层的作用是对数据库的访问进行封装,从而不涉及业务,实现解耦 ...
- java构造方法 this_Java中的构造方法this、super的用法详解
1.构造方法 定义:与类同名没有返回值的方法称为构造方法: public class test1 { private String name; private int age; public test ...
- java 构造 super_Java中的构造方法this、super的用法详解
1.构造方法 定义:与类同名没有返回值的方法称为构造方法: public class test1 { private String name; private int age; public test ...
- Java中类关键字super的用法详解
今天给大家总结介绍一下Java类中super关键字的用法. 文章目录 super关键字用法: 1.修饰属性,明确表示直接从父类中寻找同名属性 2.在子类中调用父类的方法 3.在子类中调用父类的构造方法 ...
- java同步关键字_Java中synchronized关键字修饰方法同步的用法详解
Java的最基本的同步方式,即使用synchronized关键字来控制一个方法的并发访问. 每一个用synchronized关键字声明的方法都是临界区.在Java中,同一个对象的临界区,在同一时间只有 ...
- Java中static变量作用和用法详解
static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static ...
- java jedis_Java操作Redis之Jedis用法详解
Redis(Remote Dictionary Server,远程数据字典服务器)是一个开源的高性能内存数据库,常用作缓存缓存服务器使用,也已做消息队列使用.因其高性能.丰富的数据类型.可扩展等特性受 ...
- java pinyin4j_Java汉字转拼音pinyin4j用法详解
一.工具介绍 pinyin4j 是一个支持将简体和繁体中文转换到成拼音的Java开源类库: 1. 功能 支持同一汉字有多个发音 还支持拼音的格式化输出,比如第几声之类的, 同时支持简体中文.繁体中文转 ...
- 【Java 代码实例 14】BeanUtils用法详解,附源码分析
目录 一.org.apache.commons.beanutils.BeanUtils简介 二.使用的前置条件 三.添加pom 四.org.apache.commons.beanutils.BeanU ...
- java 中的socket_Java中Socket用法详解
一.构造Socket Socket的构造方法有以下几种重载形式: (1)Socket() (2)Socket(InetAddress address, int port)throws UnknownH ...
最新文章
- cdialog创建后马上隐藏_都2020了,你还没用上这些Windows的“隐藏神技能”?
- boost之asio异步io使用实例
- 如何确认与服务器偏差_货架如何正确验收
- 硕士:论文提交和考试
- Python数据库字段拆分数据
- SAP Spartacus全局配置模块里和layoutSlot相关的配置
- 升级总代分享思路_桃生企业至尊七郎瓷砖新展厅全新升级惊艳亮相
- Sublime介绍安装和使用(转载)
- python保留字的是_Python保留字
- 如何在ant里import
- php随机生成汉字、随机字符串
- Thymeleaf 变量输出与字符串操作
- Shell脚本中获取命令运行结果、特殊变量使用、条件判断等常用操作
- 如果在做项目时,发现自己在规定的时间内肯定完成不了时,你会怎么办
- 关于NI PXI机箱及板卡的路由说明
- linux防火墙作用是什么,Linux防火墙操作1
- 「鼎捷专家讲堂」曹永诚:数字化,拨开工厂云雾见青天
- 对话系统最新进展-17篇EMNLP 2021论文
- matlab--蒙特卡罗Monte Carlo
- 智能电视 屏幕测试软件,详解如何使用液晶电视测试软件
热门文章
- jquery中的过滤filter not的用法以及可以添加this
- 开发、运维过程中解决问题的通用步骤
- Gym - 101190D Delight for a Cat
- Xilinx Artix-7 Aurora调试过程中遇到的问题
- javaSE(java基础库)私人学习笔记
- onServiceDisconnected的调用时机
- POJ 2142 The Balance ★ (不定方程 ax+by=c 的|x|+|y|最小解)
- VS2008内嵌水晶报表翻页BUG修正方法
- 为什么Zappos花钱让新员工走人?
- 帧中继环境下Ping的实现