java this关键字表示当前对象,可以访问属性、方法、构造方法
this关键字的三种访问方式:属性、方法、构造方法
1.访问属性
为了命名的规范,利用this关键字区分了属性与局部变量
public class Persion {String name;char sex;int age ;String hobby;int height;int weight;public Persion(String name,char sex ,int age, String hobby ,int height,int weight) {//利用this关键字区分了属性与局部变量this.name =name ;this.sex = sex;this.age = age;this.hobby = hobby;this.height = height;this.weight = weight;}}
2.访问方法
可以通过this关键字调用本类中书写的普通方法
也可以直接书写方法名来实现调用
两种方式都将调用方法,调用结果没有区别
public class Persion {String name;char sex;int age ;String hobby;int height;int weight;public void printName() {System.out.println("姓名:"+ name );}public void printAge() {System.out.println("性别:"+ sex);}public void printInfo() {this.printName();//带this关键字调用普通方法printAge();//直接调用普通方法System.out.println( " 年龄:"+ age +", 爱好:"+hobby +", 身高:"+ height +", 体重:"+weight);}//无参构造方法public Persion() {System.out.println("无参构造方法执行");}//有参构造public Persion(String name,char sex ,int age, String hobby ,int height,int weight) {//调用实例this.name =name ;this.sex = sex;this.age = age;this.hobby = hobby;this.height = height;this.weight = weight;}public static void main(String[] args) {//创建对象,并传参Persion p1 = new Persion("李四", '男', 12, "唱歌", 167, 70);//调用方法整体打印p1.printInfo();}}
3.访问构造方法
利用this关键字访问本类中的构造方法,实现代码的重用
注意:利用this关键字调用的构造方法必须在构造方法中的第一句,否则会报错
public class Persion {String name;char sex;int age ;String hobby;int height;int weight;/*利用this关键字对构造方法进行多次调用*/public Persion(String name, char sex, int age, String hobby, int height, int weight) {//调用三个参数的构造方法this(name, sex, age);this.hobby = hobby;this.height = height;this.weight = weight;}//三个参数的构造方法public Persion(String name, char sex, int age) {//调用两个参数的构造方法this(name, age);this.sex = sex;}//两个参数的构造方法public Persion(String name, int age) {//调用一个参数的构造方法this(name);this.age = age;} //一个参数的构造方法public Persion(String name) {this.name = name;}//无参数的构造方法public Persion() {}public void printInfo() {System.out.println( "姓名:"+name +",性别:"+ sex +" 年龄:"+ age +", 爱好:"+hobby +", 身高:"+ height +", 体重:"+weight);}public static void main(String[] args) {//创建对象,并传参Persion p1 = new Persion("李四", '男', 12, "唱歌", 167, 70);//调用方法整体打印p1.printInfo();}}
java this关键字表示当前对象,可以访问属性、方法、构造方法相关推荐
- Java常见面试题:对象的访问定位的两种方式
对象的访问定位的两种方式 java对象在访问的时候,我们需要通过java虚拟机栈的reference类型的数据去操作具体的对象. 由于reference类型在java虚拟机规范中只规定了一个对象的引用 ...
- 27、Python 面向对象(创建类、创建实例对象、访问属性、内置类属性、对象销毁、类的继承、方法重写、基础重载方法、运算符重载、类属性与方法、下划线双下划线)
27Python面向对象(Python2) Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. ...
- Java:比较两个对象中全部属性值是否相等
点击关注公众号,实用技术文章及时了解 来源:xiaoer.blog.csdn.net/article/details/85005295 例如下述Java类: import java.io.Serial ...
- Java中集合中根据对象的某个属性去重
场景 有一个List对象集合,根据每一个对象的某个属性去重. 实现 去重方法: private static ArrayList<FlightResult> removeDuplicate ...
- java stream收集列表中对象的集合属性,组成一个大集合
可能大家平常都是用stream().map(Object:xxx).collect(Collectors.toList())来组成某个属性的集合,但假如这个属性本身就是一个集合,就会比较复杂一些. 有 ...
- js中输出变量的类型和输出对象的的属性/方法/成员函数
前端页面中的完整代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Java基础系列15-面向对象之继承
文章目录 一.继承概述 1.1 继承的好处和弊端 1.2 Java中继承的特点 1.3 Java继承中成员变量的特点 1.4 继承案例 1.4.1 父子类案例 1.4.2 多重继承案例 二. supe ...
- Java this 关键字的用法
this 关键字的用法 this 在类中就是代表当前对象,可以通过 this 关键字完成当前 对象的成员属性.成员方法和构造方法的调用. 那么何时用 this? 当在定义类中的方法时,如果需要调用该类 ...
- Java——面向对象进阶(final关键字,static关键字,匿名对象,内部类,四种访问修饰符,代码块)...
一.final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可 ...
最新文章
- 大掌柜商业管理系统服务器地址,大掌柜软件通用版操作说明.doc
- python glances来监控linux服务器CPU 内存 IO使用
- iOS 使用UI控件的外观协议UIAppearance进行设置默认UI控件样式
- CodeForces-1294B排序+pair使用
- 四十一、Android Notification通知详解
- keras保存模型_onnx+tensorrt部署keras模型
- HD_1166敌兵布阵
- android stuido 在线安装svn插件,添加版本库无响应
- s4800扫描电镜的CSS3_Hitachi S-4800型场发射扫描电子显微镜+能谱
- 大数据_Spark框架_快速上手_word count 案例分析---Spark工作笔记0005
- node中使用shell脚本
- 2015年10月18日-10月24日课程作业(HA Cluster)
- 2016年第四季度思科称霸印度网络市场
- CSDN发布:AI技术人才成长路线图
- 砍价小程序有人做过吗?调用多多砍价记录,可以转口令或者链接的那种
- 创建枚举类 java_Java枚举类
- 2.3.4nbsp;《孙子兵法》的基本原则
- 使用EXCEL4J读取EXCEL以及坑
- 网络爬虫的基本结构是什么?如何建立网络爬虫抓取数据?
- 扁平化风格职业规划PPT模板
热门文章
- 推出云游戏解决方案后,腾讯在这场沙龙上还说了什么?
- 面趣 | 马云在面试中出的一道题,据说只有一个人答对……
- Linux下搭建 kafka集群 + zookeeper集群部署 安装、启动、停止
- SpringBoot2整合Activiti6工作流框架
- gblfy_IDEA常用快捷键技巧
- SonarQube开机自启动
- html5 扩展属性,HTML5属性的介绍和扩展.doc
- puppet php,puppet入门实践
- egg直接取req_Egg服务器基础功能
- ios键盘done中文_IOS_IOS关闭键盘的方法,首先输入完成后按键盘上的done - phpStudy...