频道栏目
首页 > 程序开发 > 软件开发 > Java > 正文
java中的this关键字
2012-04-07 09:52:13           
收藏   我要投稿

java提供了this关键字,this关键字表示该类的对象的默认引用。

this关键字最大的作用是,让类的一个方法,访问该类的另一个方法或者属性。


先看一个不好的例子:

public class Baby
{
 public void wakeUp()
 {
  System.out.println("宝宝醒啦");
 }

 public void eat()
 {
  Baby baby = new Baby();
  baby.wakeUp();
  System.out.println("吃东西");
 }
}

这样不符合逻辑。这就相当于本对象的eat方法,需要调用另一个对象的wakeUp方法。

 


我们看这个例子:

public class Baby
{
 public void wakeUp()
 {
  System.out.println("宝宝醒啦");
 }

 public void eat()
 {
  this.wakeUp();
  System.out.println("吃东西");
 }
}

这样就符合逻辑了。自己的eat方法,还需要自己的一个wakeUp方法。

 


java允许同一个对象的方法直接调用该对象的属性或者方法,所以this可以省略。

public class Baby
{
 public void wakeUp()
 {
  System.out.println("宝宝醒啦");
 }

 public void eat()
 {
  wakeUp();
  System.out.println("吃东西");
 }
}

 

 

而在静态方法中无法使用this,因为类可以直接调用该方法,所以this无法指向合适的对象。


public class Baby
{
 public void wakeUp()
 {
  System.out.println("宝宝醒啦");
 }

 public static void eat()
 {
  // 报错
  wakeUp();
  System.out.println("吃东西");
 }
}

 

我们再来看一个最常用的例子,就是在构造方法中使用this

public class Baby
{
 private String name;
 private int age;

 public Baby(String name, int age)
 {
  super();
  this.name = name;
  this.age = age;
 }

 public String getName()
 {
  return name;
 }

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

 public int getAge()
 {
  return age;
 }

 public void setAge(int age)
 {
  this.age = age;
 }
}

 

摘自  IT胖子的专栏
 
点击复制链接 与好友分享!回本站首页
相关TAG标签 关键字
上一篇:java.lang.Comparable接口详解
下一篇:Java的位操作
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站