java--this关键字

news2024/11/23 12:30:45

1.this是什么

this就是一个变量,可以用在方法中,来拿到当前对象(这个this就相当于你的车钥匙,当你在把车停到了车库,然后你发现找不到你的车的时候,就会按一下车钥匙,让你的车叫一下,你就会晓得你的车在哪里,这个this就相当于是你的车钥匙,当然哈,看到的电动车钥匙,我什么水平,怎么可能有汽车嘞)。

2.this的执行原理

解析:先方法区,加载class文件,加载main方法,方法区加载好之后,在栈内存中会加载一个main空间,然后继续回到代码内,发现要创造Student文件,就加载Student.class文件进方法区,然后在栈中的main空间内加载一个s1空间,然后发现代码内有new,会在堆中创造一个Student的s1的空间,在将地址值交给在堆内存中的s1空间,在将类的地址交给身在方法区的Student.class,继续运行会发现需要打印s1,就将s1打印空间内的地址值打印出来,然后继续运行发现需要调用Student内的printThis方法,就去Student内找printThis方法,发现方法里面需要打印输出this,就将自己的地址打印输出,第二次s1差不多是相同的样子,自己去领悟

3.this有啥应用场景

this主要用来解决:变量名称冲突问题的(就是相当于,等你喝醉了的时候,怕你进错家门的钥匙,当你用钥匙打不开这个门的时候,就代表着不是你家,当你this点不出来的变量,就代表着个变量不是你这个类里面的,就是怕你进错房子睡错床喽,到时候就解释不清楚了)

注:括号内的红色字体为个人见解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1164713.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《现代C++语言核心特性解析》笔记(一)

一、新基础类型(C11~C20) C基础类型回顾一览表 1. 整数类型 long long 我们知道long通常表示一个32位整型,而long long则是用来表示一个64位的整型。不得不说,这种命名方式简单粗暴。不仅写法冗余,而且表…

若依笔记(四):代码生成器

已知使用MyBatisPlus代码生成器可以自动生成Entity、Mapper、Service、Controller代码,前提是数据库中有数据表,生成pojo类以及对于该数据表的增删改查命令的代码,若依更进一步能选择表后生成代码、预览、下载,同时可以生产前端代…

构建强大的Web应用之Django详解

引言: Django是一个功能强大且灵活的Python Web框架,它提供了一套完整的工具和功能,帮助开发者快速构建高效的Web应用。本篇文章将带您逐步了解Django的基本概念和使用方法,并通过实际的代码案例,帮助您从零开始构建自…

【docker】安装xxl-job-admin调配中心

1.安装数据库(注意版本号,这里选择版本2.3.1) 1.1下载代码,并切换到2.3.1分支 1.2 打开并运行xxl-job/doc/db/tables_xxl_job.sql 2.编写docker-compose.yaml,并运行 1. docker-compose.yaml 2.将yaml放入Linux系…

滑模控制问题总结

设计切换函数/滑模面S(x) 线性: 滑模面参数确定方法:Hurwitz 保证多项式为Hurwitz,即特征值在左半平面。 主要适用于速度和精度要求都不高的非线性系统 非线性 《滑模变结构控制理论研究综述》 终端滑模控制&#xff1…

Redis事务管道

文章目录 Redis事务1.简介(1)什么是事务(2)Redis事务的特点 2.实操案例(0)事务命令(1)正常执行(2)放弃事务(3)全体连坐(4&…

tiki靶机攻略

tiki靶机攻略 扫描 渗透 访问robots.txt 发现目录,访问一下 再次扫描/tiki/目录,然后发现changelog下又tiki的版本信息 kali漏洞搜索,找到一个符合版本的 python3 48927.py 10.4.7.159执行过后,显示不需要密码即可登录 随后bp登…

gd32f470zgt6最小系统 上哪找到

gd32f470zgt6最小系统 上哪找到

Docker 学习路线 2:底层技术

了解驱动Docker的核心技术将让您更深入地了解Docker的工作原理,并有助于您更有效地使用该平台。 Linux容器(LXC) Linux容器(LXC)是Docker的基础。 LXC是一种轻量级的虚拟化解决方案,允许多个隔离的Linux系…

VS Code 开发Java之代码导航和代码编辑

快速导航 VS Code提供了一些功能可以在Java开发时快速导航。 代码导航 大纲视图(Outline view): 方便地导航当前文件中的成员项目视图(Projects view): 项目的详细概述Java编辑器: 支持调用层…

模电学习路径

交流通路实质 列出电路方程1,方程1对时刻t做微分 所得方程1‘ 即为 交流通路 方程1对时刻t做微分:两个不同时刻的方程1相减,并 令两时刻差为 无穷小 微分 改成 差 模电学习路径: 理论 《电路原理》清华大学 于歆杰 朱桂萍 陆文…

3D模型格式转换工具HOOPS Exchange:如何将3D PDF转换为STEP格式?

3D CAD数据在制造、工程和设计等各个领域都扮演着重要的角色。为了促进不同软件应用程序之间的协作和互操作性,它通常以不同的格式进行交换。 HOOPS Exchange是一个强大的软件开发工具包,提供了处理和将3D CAD数据从一种格式转换为另一种格式的解决方案…

WoShop跨境电商源码:告别繁琐,一键实现批量发货

随着全球电子商务的飞速发展,越来越多的商家开始进军跨境电商领域。然而,搭建一个成功的跨境电商平台需要考虑众多因素,如订单处理、物流配送、支付结算等。在这个过程中,WoShop跨境电商源码因其强大的功能和简易的操作&#xff0…

NOIP2023模拟9联测30 金牌

题目大意 有一棵 n n n个顶点的树,这棵树上长度为 d d d的简单路径的价值为 2 d 2^d 2d。 有 q q q次询问,每次给出两个正整数 x , y x,y x,y,请你回答所有通过顶点 x x x和 y y y的简单路径的价值之和,输出答案模 998244353 99…

【kubernetes】k8s对象☞pod

文章目录 1、什么是pod2、pod的使用2.1 用于管理pod的工作负载资源2.2 pod怎样管理多个容器2.3 pod 操作系统2.4 pod和控制器2.5 pod模板 3、pod的更新与替换3.1 资源共享和通信3.2 pod中的存储3.3 pod联网 4、容器的特权模式4.1 linux 特权容器4.2 windows特权容器 5、静态pod…

uniapp之actionsheet 自定义组件

uniapp本身自带的actionsheet太丑&#xff0c;不够美观。闲着也是闲着&#xff0c;自己实现了一个类似的选择器。 支持功能&#xff1a; 1、左对齐 2、右对齐 3、居中 4、可加图标 下面贴出使用教程&#xff1a; <template><view><action-sheet alignment&…

在Google Kubernetes集群创建分布式Jenkins(一)

因为项目需要&#xff0c;在GKE的集群上需要创建一个CICD的环境&#xff0c;记录一下安装部署一个分布式Jenkins集群的过程。 分布式Jenkins由一个主服务器和多个Agent组成&#xff0c;Agent可以执行主服务器分派的任务。如下图所示&#xff1a; 如上图&#xff0c;Jenkins Ag…

大数据毕业设计选题推荐-系统运行情况监控系统-Hadoop-Spark-Hive

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

openGauss学习笔记-112 openGauss 数据库管理-管理用户及权限-行级访问控制

文章目录 openGauss学习笔记-112 openGauss 数据库管理-管理用户及权限-行级访问控制 openGauss学习笔记-112 openGauss 数据库管理-管理用户及权限-行级访问控制 行级访问控制特性将数据库访问控制精确到数据表行级别&#xff0c;使数据库达到行级访问控制的能力。不同用户执…

Github 自动化部署到腾讯云服务器

1.准备工作 新建仓库 新建项目 推送到远程仓库 2.配置仓库密钥 点击 Settings -> Sectets and variables -> Actions -> New repository sectet 依次添加以下变量 Name&#xff1a;SERVER_HOST / Secret&#xff1a;服务器公网IP Name&#xff1a;SERVER_USERNAME /…