博客
关于我
java —— this 关键字
阅读量:289 次
发布时间:2019-03-03

本文共 793 字,大约阅读时间需要 2 分钟。

什么时候用this?

在编写Java程序时,遇到可能产生二义性的情况,可以通过使用this关键字来明确指向当前对象;

普通方法中的this

在普通方法中,this关键字用于指代调用该方法的对象。例如:

public void getSum() { System.out.println(this.t1 + this.t2);}

构造方法中的this

在构造方法中,this关键字用于指代要初始化的对象。例如:

public Score(int t1) { this.t1 = t1;}

此外,构造方法中通常还会初始化其他变量:

public Score(int t1, int t2) { this.t1 = t1; this.t2 = t2;}

注意事项

需要注意以下几点:

1. this关键字不能用于static方法。因为static方法属于类,而不是对象,无法使用this关键字。

2. 在构造方法中,this关键字必须是第一行代码,否则会导致编译错误。

代码示例

以下是一个完整的代码示例:

class Score { int t1, t2; public Score(int t1) { this.t1 = t1; } public Score(int t1, int t2) { this.t1 = t1; this.t2 = t2; } public void getSum() { System.out.println(this.t1 + this.t2); }}

并在主类中测试:

public class TestConstructor { public static void main(String[] args) { Score s1 = new Score(10); Score s2 = new Score(5, 15); s2.getSum(); }}

转载地址:http://whsl.baihongyu.com/

你可能感兴趣的文章
no connection could be made because the target machine actively refused it.问题解决
查看>>
No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
查看>>
No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
查看>>
No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
查看>>
No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
查看>>
No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
查看>>
No module named 'crispy_forms'等使用pycharm开发
查看>>
No module named cv2
查看>>
No module named tensorboard.main在安装tensorboardX的时候遇到的问题
查看>>
No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
查看>>
No new migrations found. Your system is up-to-date.
查看>>
No qualifying bean of type XXX found for dependency XXX.
查看>>
No resource identifier found for attribute 'srcCompat' in package的解决办法
查看>>
no session found for current thread
查看>>
No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
查看>>
NO.23 ZenTaoPHP目录结构
查看>>
no1
查看>>
NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分
查看>>
NoClassDefFoundError: org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata
查看>>
Node JS: < 一> 初识Node JS
查看>>