一文带你快速了解Java中的【this引用】
1. 什么是this引用
this引用指向当前对象(谁调用这个方法,谁就是当前对象),在成员方法中对所有成员变量的操作,都是通过该引用去访问的。 只不过所有的操作对用户是透明的,用户不需要来传递,编译器自动完成。
public class HeroInfo {public String name;public int height;public void setHero(String name,int height){this.name = name;this.height = height;}public void printHero(){System.out.println("name: "+this.name+" height: "+ this.height);}
public static void main(String[] args) {HeroInfo heroInfo = new HeroInfo();heroInfo.setHero("娜可露露",170);heroInfo.printHero();}
注意:this引用的是调用成员方法的对象 (下图中,this 引用的就是调用 setHero()和 printHero() 两个方法的 对象 HeroInfo )
2. this 引用的特性
- this的类型:对应类类型引用,就是 哪个对象调用的 就是哪个对象的引用类型
- this 只能在 成员方法 中使用 (不能在静态方法中使用)
- 在成员方法中,this只能引用当前对象,不能再引用其他对象
- this 是成员方法 第一个隐藏的参数,编译器会自动传递,在成员方法执行时,编译器会负责将 调用成员方法对象的引用传递给该成员方法,this 负责来接收
3. this.data 、 this.func() 、 this()
- this.data:访问当前对象的成员变量
- this.func():访问当前对象的成员方法 (在构造方法或者成员方法中,都可以访问当前对象的成员方法)
在成员方法中不能用 this 调用构造方法 (对this的调用必须是构造器中的第一个语句)
this():调用当前对象的其他构造方法 (必须是在构造方法中的第一个语句,且只能在构造方法中 调用)
- this 不能调用静态的方法和属性
一文带你快速了解Java中的【this引用】相关推荐
- 教妹学Java(二十):一文带你彻底了解 Java 中的注释,干货了
你好呀,我是沉默王二,一枚颜值与才华俱在的程序员.本篇教程通过我和三妹对话的形式来谈一谈"Java 中的注释". 教妹学 Java,没见过这么有趣的标题吧?"语不惊人死不 ...
- 一文带你快速了解 Java 线上问题快速诊断神器 Arthas
文章目录 一.什么是 Arthas 二.特性一览 三.Arthas 能为你做什么? 四.快速安装 1.前提条件 2.一键安装 五.快速使用 1.启动脚本并连接进程 2.启动 jar 包并连接进程 六. ...
- 10个问题让你快速避开java中的jdbc常见坑
摘要:JDBC,即Java Database Connectivity,java数据库连接.是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范. 本文分享自华为云社区<1 ...
- java byte char io流_一文带你看懂JAVA IO流,史上最全面的IO教学
原标题:一文带你看懂JAVA IO流,史上最全面的IO教学 一.IO流是什么 惯例引用百科的回答 流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符 ...
- java io流详解_一文带你看懂JAVA IO流,史上最全面的IO教学啦
一.IO流是什么 惯例引用百科的回答流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列.从流中取得数据的操作称为提取操作,而向流中添加数据的操作 ...
- javaio流_一文带你看懂JAVA IO流,史上最全面的IO教学啦
一.IO流是什么 惯例引用百科的回答 流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列.从流中取得数据的操作称为提取操作,而向流中添加数据的操 ...
- 一文带你看懂JAVA IO流(一),史上最全面的IO教学啦(附送JAVA IO脑图)
一.IO流是什么 惯例引用百科的回答 流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列.从流中取得数据的操作称为提取操作,而向流中添加数据的操 ...
- 一文带你看懂JAVA IO流,史上最全面的IO教学啦(附送JAVA IO脑图
一.IO流是什么 惯例引用百科的回答 流是一种抽象概念,它代表了数据的无结构化传递.按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列.从流中取得数据的操作称为提取操作,而向流中添加数据的操 ...
- 一文带你了解PCB设计中的常用基本概念
本文将从初学者的角度出发,一文带你快速了解PCB设计中的常用基本概念: 一.FR4板材 FR-4就是玻璃纤维环氧树脂覆铜板,线路板中的一种基材,可以分为一般FR4板材和高TG FR4板材,Tg是玻璃转 ...
最新文章
- 词移距离 Word Mover‘s Distance
- FMDatabaseQueue 数据库多线程操作、事务处理
- 以太坊Solidity函数的external/internal,public/private区别
- unity3d 的Quaternion.identity和transform.rotation区别是什么
- AAAI 2019 滴滴被收录论文全解读
- Docker CE/EE 原生支持Kubernetes
- Git忽略文件或文件夹
- Lubuntu 18.10仍有可能支持32位PC
- Android编程之仿微信显示更多文字的View
- gjrand 4.0 发布,C语言的伪随机数生成器
- 使用Specflow 和XUnit 进行BDD测试项目配置方法
- 分享12款 JavaScript 表格控件(DataGrid)
- AlterID.exe 报错问题
- 为什么相关不等于因果
- Android APP隐藏图标、无启动界面、进程隐藏的方法
- XSS 之 haozi me 题解——人生第一份CSDN题解
- 国内好用的邮箱评选,电子邮箱大全有你的吗?
- intern string java_Java-String.intern的深入研究
- ETI工作-测试文件多层folder树生成
- HTML中的标记-遁地龙卷风