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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张校云 黑马帝   /  2011-9-28 22:25  /  2015 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Java 类中的this 说是表示这个类的一个实例,但是这个实例是在什么创建的呢?是由谁来创建的呢?
为什么在静态方法中又不能用这个this了呢?
这个地方有点儿没搞明白,望大家指点一二。

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1 新人加分咯!

查看全部评分

4 个回复

倒序浏览
黑马网友  发表于 2011-9-28 22:42:01
沙发
this 的使用.

     如果形式参数名与实力变量名相同, 则需要在实力变量名之前加 this 关键字

  例如:

              public  void  setRadius(int  radius)
{
          this.radius  = radius;
}

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-9-28 22:52:45
藤椅
this变量使用在一个成员函数的内部。指向当前对象。当前对象是指调用当前正在执行方法的那个对象。

至于为什么在静态方法中不能用this 应该是调用static方法不需要实例对象,所以没有对象调用,不能用this

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-9-28 22:59:10
板凳
奥 原来这个this就是自己new的那个对象,被自己给搞晕了
回复 使用道具 举报
黑马网友  发表于 2011-9-28 23:28:51
报纸
this怎么会创建对象呢,this是指向当前调用的对象,谁调用这个东西this就指向谁,我对C语言里面的指针不懂,不过我觉得跟指针有点像,静态不能用this是因为,静态可以直接用不用实例,所以不存在对象这一说就不会被this调用,曾经见过一个帖子说何为静态,?就是没有this()的就叫静态。不过有点夸张,但是确实是这个道理,~~

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马