java的this关键字 and 构造器

文章目录

  • 构造器
  • 构造器的特点
  • this关键字
  • 举个例子吧
  • 其他链接

不难理解,so easy!!!

构造器

People people = new People();
// People类型:决定着对象的类型(在内存中的构造形式)
// people对象名称,在栈内存当中
// new 关键字:在栈内存当中开辟内存空间
// People() :构造器给对象赋初值

构造器的特点

  1. 构造器与类同名
  2. 创建对象的时候,new后面跟的是构造器
  3. 在每个类当中都有默认的不会显示的无参构造器,如果我们在类当中重写一个构造器,那么无参构造器将会被覆盖,不能再被使用(能重写构造器)
  4. 构造器没有返回值,有返回值不是构造器
  5. 在一个类当中,能有多个构造器,名字是相同的,但参数不一样

this关键字

  1. this代表当前对象
  2. this不能用在static当中,static代表是类,this代表的是对象,有类不一定有对象
  3. this能调用static修饰的方法和变量,类的东西被对象共享
    this的用法:
  4. this.属性名:在方法中局部变量名和成员(全局)变量名相同时。我们用this来区分全局变量和局部变量,this调用的一定是属于对象能第哦啊用的变量是全局变量
  5. this.方法名:代表当前正在运行的对象调用该方法
  6. this():不能在普通方法中使用,只能在构造器当中,还必须是第一条语句,调用的是一个构造器,
    • 只要在this的()中赋值就行
    • 在一个类下两个构造方法不能通过this()相互调用
    • 不能与super()同时使用

举个例子吧

class Test{int age;char sex;String name;public Test(){/*this.age = 1970;this.sex = '男';this.name = "YXZ";*/this(20, '男', "YXZ");}public Test(int age, char sex){this.age = age;this.sex = sex;}public Test(int age, char sex, String name){this.age = age;this.sex = sex;this.name = name;}void MytoString(){System.out.println("年龄:" + this.age + "  性别:" + this.sex + " 名字:" + this.name);}
}public class Test1 {public static void main(String[] args) {Test test =  new Test();test.MytoString();Test test2 =  new Test(18, '女', "齐");test2.MytoString();}}

运行结果:

年龄:20  性别:男 名字:YXZ
年龄:18  性别:女 名字:齐

其他链接

【Java】还不懂this关键字?一分钟彻底弄懂this关键字
this关键字

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

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

相关文章

UT单元测试

Tips:在使用时一定要注意版本适配性问题 一、Mockito 1.1 Mock的使用 Mock 的中文译为仿制的,模拟的,虚假的。对于测试框架来说,即构造出一个模拟/虚假的对象,使我们的测试能顺利进行下去。 Mock 测试就是在测试过程…

Android 允许其他应用读取本应用的私有目录

在Android中,应用默认是封闭的,不允许其他应用访问自己的私有目录。但是,如果你想要让其他应用能够访问你的应用中的某些文件,你可以使用FileProvider类来实现这一功能。 以下是使用FileProvider的步骤: 1. 在你的应…

SAP Fiori开发中的JavaScript基础知识12 - 闭包,模块模式,回调函数

1. 前言 本文将介绍JavaScript中几个高阶的知识点:闭包,模块和回调。 2. 闭包 在JavaScript中,闭包是一个非常强大的特性,它允许函数记住并访问它的词法作用域,即使它在词法作用域之外执行。 简单来说,…

【CVE-2023-38831】进行钓鱼攻击的研究

本文仅仅是对相关漏洞利用的学习记录,请各位合法合规食用! WinRAR是一款文件压缩器,该产品支持RAR、ZIP等格式文件的压缩和解压等。WinRAR在处理压缩包内同名的文件与文件夹时代码执行漏洞,攻击者构建由恶意文件与非恶意文件构成的特制压缩包文件,诱导受…

C# wpf 嵌入外部程序

WPF Hwnd窗口互操作系列 第一章 嵌入Hwnd窗口 第二章 嵌入WinForm控件 第三章 嵌入WPF控件 第四章 嵌入外部程序(本章) 第五章 底部嵌入HwndHost 文章目录 WPF Hwnd窗口互操作系列前言一、如何实现?1、定义属性2、进程嵌入(1&…

AugmentedReality之路-平面检测(5)

本文介绍通过AR检测水平平面和垂直平面,并将检测到的平面转化为Mesh 1、在首页添加功能入口 在首页添加一个按钮,命名为Start World Track 2、自定义ExecStartAREvent 创建ARSessionConfig并取名为ARSessionConfig_World 自定义ExecStartAREvent&…

大话设计模式之迭代器模式

迭代器模式是一种行为设计模式,它允许客户端逐个访问集合中的元素,而不暴露集合的底层表示。这种模式提供了一种方法来访问聚合对象中的各个元素,而不需要暴露其内部结构。 迭代器模式由以下几个关键角色组成: 迭代器&#xff08…

React 使用 three.js 加载 gltf 3D模型 | three.js 入门

系列文章 示例项目(gitcode):https://gitcode.com/qq_41456316/simple-react-three-demo 文章目录 系列文章前言一、three.js是什么?二、使用 React 和 three.js 加载 glTF 3D 模型的步骤步骤 1:创建 React 应用步骤 2:安装 thre…

实现ElasticSearch搜索自动补全【同附Java代码实现和拼音分词器安装】

文章目录 1、简介2、拼音分词器3、自定义分词器4、自动补全查询5、实现酒店搜索框自动补全5.1、修改酒店映射结构5.2、修改HotelDoc实体5.3、重新导入5.4、自动补全查询的JavaAPI5.5、实现搜索框自动补全 6、资料分享链接 ​🍃作者介绍:双非本科大三网络…

linux:watch用法详解

文章目录 1. 描述2. 语法3. 参数4. 例子 1. 描述 watch 用于周期性地执行指定的命令,并将命令的输出打印到终端上。它可以让您以固定的时间间隔观察命令的输出,非常适合用于监视文件系统、系统状态、日志文件等。 2. 语法 watch 命令的基本语法是&…

如何手动清理Linux的内存缓存?清理buff/cache对系统有什么影响?

在Linux系统中,缓存(Cache)是用于提高文件系统性能的一种存储机制。系统会将经常访问的数据保存在缓存中,以便快速访问。手动清理Linux的缓存通常指的是清空页面缓存(page cache)和/或目录项缓存&#xff0…

linux查看网络连接数

目录 netstat top netstat 1.netstat查看当前主机上网络连接信息,端口号,pid,程序名等等 #直接查看 netstat -anp #一般使用的时候,可能要筛选 #比如8080端口是否被占用 netstat -anp | grep 8080 #minio服务占用了那些端口 netstat -anp …

unity数组

数组的定义 动态初始化:在定义数组时只指定数组的长度,由系统自动为元素赋初值的方式。 静态初始化:定义数组的同时就为数组的每个元素赋值 数组的静态初始化有两种方式 1、类型门数组名new 类型[]{元素,元素,…}; 2、类型[数组名{元素&am…

ubuntu20挂载webdav

WebDAV 是个好东西,尤其是配个自己的 NAS 使用,熟悉以后就再也离不开它啦 sudo apt-get update sudo apt-get install davfs2 上下左右键可以切换到“是”选项 2.创建目录挂载点 sudo mkdir /mnt/webdav 3.配置 davfs2 编辑 davfs2.conf 文件以配置 da…

2024.04.10嵌入式第一天

# 前言 2024年4月10号也算是有纪念意义的一天吧,什么纪念意义呢?前面博客可能也说过,本人经历过两年前端,然后因为一些不可控的原因转为java后端一年,然后前段时间因为一些原因接触了解了嵌入式这个行业,所…

Node.js 的 5 个常见服务器漏洞

Node.js 是一个强大且广泛使用的 JavaScript 运行时环境,用于构建服务器端应用程序。然而,与任何其他软件一样,Node.js 也有自己的一些漏洞,如果处理不当,可能会导致安全问题。请注意,这些漏洞并不是 Node.…

基于springboot的扶贫产品和扶贫物资捐赠系统(含源码+sql+视频导入教程+文档+PPT)

👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于springboot的扶贫产品和扶贫物资捐赠系统2拥有管理员和用户角色 管理员:用户管理、扶贫项目管理、物资管理、扶贫产品管理、捐赠管理、资讯管理等 用户:捐赠…

Mybites一对多collection

Goods实体属性&#xff1a; private List<GoodsImg> goodsImgList; private String id; private String name; GoodsImg实体属性&#xff1a; private String id; private String fid; private String imgpath; …

nginx+uWsgi应用部署方式

uWSGI 是一个快速的、纯C语言开发的、自维护的、对开发者友好的 WSGI 服务器&#xff0c;旨在提供专业的 Python web应用发布和开发。可使用 C/C/Objective-C 来为 uWSGI 编写插件。在这里要区分三个概念&#xff1a; WSGI&#xff1a;全称是Web Server Gateway Interface&…

90天玩转Python—16—基础知识篇:面向对象知识详解

90天玩转Python系列文章目录 90天玩转Python—01—基础知识篇:C站最全Python标准库总结 90天玩转Python--02--基础知识篇:初识Python与PyCharm 90天玩转Python—03—基础知识篇:Python和PyCharm(语言特点、学习方法、工具安装) 90天玩转Python—04—基础知识篇:Pytho…