黑马程序员技术交流社区

标题: 赋值运算! [打印本页]

作者: 魏志雷    时间: 2012-1-24 14:49
标题: 赋值运算!
本帖最后由 魏志雷 于 2012-1-25 13:57 编辑

public void set(String name)
{
        this.name=name+"--"+count++;
}
第一次见这种方式,不理解,count不是name属性怎么可以这样写!

该贴已经同步到 魏志雷的微博
作者: 陈浩    时间: 2012-1-24 15:23
本帖最后由 陈浩 于 2012-1-24 15:24 编辑

你程序没写全,我想这个Count 应该是你在类中定义的全局变量,在成员方法Set 中可以被调用
作者: 张振宁    时间: 2012-1-24 16:13
本帖最后由 Simple 于 2012-1-24 16:15 编辑

这应该是个javabean的 set方法,count变量自增1.  
你这个类没发全,我觉得count应该是个全局变量。在这里面只是设置名字避免重复,所以count自增1.

作者: 曾辉    时间: 2012-1-24 16:51
这个count应该是类中全局变量,在set方法中调用它,且count自增1,该类没写完整。
作者: 张伟~    时间: 2012-1-24 18:23
肯定前面已经定义过count的,要不然就这个你编译不过去
楼主你在前面好好找找,肯定找得到。
作者: 魏志雷    时间: 2012-1-24 23:43
count是全局变量没错,主要不理解的地方是为什么可以这样写,我们不都是写this.name=name;么 this.name=name+"--"+count++;这个写法第一次见,不理解为什么this.name=name后面还可以加代码!
作者: 祁焱    时间: 2012-1-25 11:48
name的数据类型是String,你可以这么理解:String str=name+"--"+count++;(字符串连接),this.name=str。
作者: 黄秋    时间: 2012-1-25 15:02
魏志雷 发表于 2012-1-24 23:43
count是全局变量没错,主要不理解的地方是为什么可以这样写,我们不都是写this.name=name;么 this.name=nam ...

this.name=name+"--"+count++; 这样可以在设置相同name时,也能得到不同姓名,如两次set("aa"),会得到类似 aa3,aa4,不会产生姓名都是aa 。一般情况下是 this.name=name,但永远都是的话,怎么不内置一set 方法呢,比如构造方法就内置有一个。set 方法是按情况编写的,很多时候要加上输入检查,类似JavaScript 的表单检查。
作者: 魏志雷    时间: 2012-1-26 09:44
本帖最后由 魏志雷 于 2012-1-26 11:01 编辑

昨天看thinking in java中有解释,java中重载了“+”和“+=”,只有这两种,相当于连接符了,使用实际是使用StringBuilder创建了对象把"+"两边的字符串连接在一起
作者: 杜明辉    时间: 2012-1-26 14:45
我感觉count是全局变量,相当于一个计数器。this.name=name+"--"+count++; 会让输入的name不重复。
abc--1
abc--2





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2