栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java我什么时候应该在课堂上使用“ this”?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java我什么时候应该在课堂上使用“ this”?

this
关键字在三种情况下,主要使用。第一种也是最常见的是使用
setter
方法消除变量引用的歧义。第二种是当需要将当前类实例作为参数传递给另一个对象的方法时。第三种是从构造函数内部调用备用构造函数的方法。

案例1:使用

this
来消除歧义变量引用。在
Java setter方
法中,我们通常传入与要设置的私有成员变量同名的参数。然后,将参数分配
x
this.x
。这清楚表明你正在将参数“名称”的值分配给实例变量“名称”。

public class Foo{    private String name;    public void setName(String name) {        this.name = name;    }}

案例2:使用this为传递到另一个对象的参数。

public class Foo{    public String useBarMethod() {        Bar theBar = new Bar();        return theBar.barMethod(this);    }    public String getName() {        return "Foo";    }}public class Bar{    public void barMethod(Foo obj) {        obj.getName();    }}

案例3:使用

this
调用备用构造。在评论中,
trinithis
正确指出了的另一种常见用法
this
。如果单个类具有多个构造函数,则可以
this(arg0, arg1, ...)
在你的构造函数的第一行中调用你选择的另一个构造函数。

class Foo{    public Foo() {        this("Some default value for bar");        //optional other lines    }    public Foo(String bar) {        // Do something with bar    }}

我还曾经看到this过强调一个事实,即引用了实例变量(无需歧义化),但是在我看来,这种情况很少见。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/379762.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号