黑马程序员技术交流社区

标题: 大家帮我看一个StringBuffer 的问题 [打印本页]

作者: elopment    时间: 2016-7-17 15:19
标题: 大家帮我看一个StringBuffer 的问题
为什么这两句报错呢

作者: elopment    时间: 2016-7-17 15:21
应该是有方法的啊不能调用
作者: lifeiwangyue    时间: 2016-7-17 22:06
因为你的类的名字也叫StringBuffer,这样使用方法,程序以为是静态方法,修改下类的名字,建议类名不要与关键字或者API中一样
作者: miniccc    时间: 2016-7-17 22:53
没看懂,什么意思啊
作者: zhangming    时间: 2016-7-17 23:27
修改类名之后应该没有错误  我自己亲自测试过
console 输出是 0 16

建议自己定义的类和 API 中类名不要相同
作者: qetu001212    时间: 2016-7-17 23:45
你们看的好细,我第一眼都没注意类名~~~
作者: xie312000    时间: 2016-7-17 23:55
应该是没有导包
作者: Sachiel    时间: 2016-7-18 00:24
这是你自己定义的类,不是StringBuffer 类,只是名字相同而已。所以没有StringBuffer 类中的方法
作者: HEBEIREN    时间: 2016-7-18 09:25
自定义的类名称不能java中的保留字相同。
作者: kongbox    时间: 2016-7-18 11:16
elopment 发表于 2016-7-17 15:21
应该是有方法的啊不能调用

你的类名与StringBuffer 所以系统会认为你新建的是你自己的类,java 究竟原则,而且也没有导入对于的包。
改下类名,导入包就可以啦
作者: elopment    时间: 2016-7-18 12:26
kongbox 发表于 2016-7-18 11:16
你的类名与StringBuffer 所以系统会认为你新建的是你自己的类,java 究竟原则,而且也没有导入对于的包。 ...

多谢,
作者: ye19930325    时间: 2016-7-18 12:33
10楼正解
作者: elopment    时间: 2016-7-21 21:21
zhangming 发表于 2016-7-17 23:27
修改类名之后应该没有错误  我自己亲自测试过
console 输出是 0 16

对eclipse不太熟,.命名的地方太多了人.多谢
作者: bad-thjee    时间: 2016-7-21 23:13
的类名与StringBuffer 所以系统会认为你新建的是你自己的类,java 究竟原则,而且也没有导入对于的包。
改下类名,导入包就可以啦
作者: yin12310    时间: 2016-7-22 00:47
楼主,首先先跟你点个赞,证明有一颗程序猿的心,因为你都想着自己去写自己的类了这个心是好的,但是,你创建自己的类去调用API里面StringBuffer类的方法,肯定是不行的,你创建本类的对象是可以的,但是,你也得写自己的length()和capacity()方法 才能调用,毕竟你创建的类没有去继承,而你还去调用API里面StringBuffer类的方法? 编译能不出错吗?就好比 你自己的儿子当然喊你自己爸爸,你能去强迫别人的儿子来喊你爸爸吗?
作者: 怡蓝    时间: 2016-7-22 01:13
好复杂,好复杂啊,好复杂啊啊啊




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