A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑夜里的白猫 中级黑马   /  2013-5-30 10:14  /  1278 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑夜里的白猫 于 2013-5-30 11:08 编辑

class  PersonDemo
{
        public static void main(String[] args)
        {
                Person p=new Person();
                p.printAge(10);
        }
}


class Person
{
        private int age;
        public void printAge(int age)
        {
                this.age=age;//this.age这个age是指的private int age 中的age么?
                System.out.println(age);
        }
}

4 个回复

倒序浏览
嗯,指的是成员变量的age
回复 使用道具 举报

哪个对象在调用this所在的函数,this就代表哪个对象。

本帖最后由 花开花落总相似 于 2013-5-30 10:36 编辑
  1. class Person    //毕老师的验证代码   
  2. {
  3. private String name;
  4. private int age;
  5. Person(int age)
  6. {
  7. this.age = age;
  8. }
  9. Person(String name)
  10. {
  11. this.name = name;
  12. }
  13. Person(String name,int age)
  14. {
  15. this.name = name;
  16. this.age = age;
  17. }

  18. public void speak()
  19. {
  20. System.out.println("name="+this.name+"...age="+this.age);
  21. this.show();
  22. }
  23. public void show()
  24. {
  25. System.out.println(this.name);
  26. }

  27. }

  28. class PersonDemo3
  29. {
  30. public static void main(String[] args)
  31. {



  32. Person p = new Person("lisi");
  33. Person p1 = new Person("zhangsan");
  34. p.speak();
  35. p1.speak();
  36. p.speak();
  37. }
  38. }
复制代码
回复 使用道具 举报
在Person类printAge方法中,在这里this是为了表示这个age在Person这个类的age属性即是(private int age中的age)而不是参数age
回复 使用道具 举报
楼上说的已经够详细的了。没错就是 private int age;这个age,建议你再复习一下this关键字的作用。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马