为了账号安全,请及时绑定邮箱和手机立即绑定

如下图中,求问这里的三个add为什么有问题?该怎么改?

如下图中,求问这里的三个add为什么有问题?该怎么改?

侃侃尔雅 2022-05-01 16:06:33
求问这里的三个add(new FilledRect(0,0,stripe,height,Color.BLUE)); 为什么有问题。。应该怎么解决呢?因为这个题目是要求自己定义一个FilledRect类,继承GRect 的基础上,可以实现填充矩形并带上color。可是为什么这里的add 就出现问题了?这里的add (new....)括号中的new为什么不能省略。括号中的newFilledRect(0,0,stripe,height,Color.BLUE)是属于方法还是构造函数?谢谢大神!!!
查看完整描述

2 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

首先你得确定 GRect 类有 public add(FilledRect filledRect){} 这个方法,如果没有,就在FilledRect 这个类下添加该方法并实现之。
如果括号里不用new ,代码可以改成下面例子:
FilledRect filledRect;
filledRect=new FilledRect(0,0,stripe,height,Color.BLUE);
add(filledRect);
filledRect=new FilledRect(0,0,stripe,height,Color.WHITE);
add(filledRect);
filledRect=new FilledRect(0,0,stripe,height,Color.RED);
add(filledRect);
---直接在括号中用new 只是为了精简代码,减少filledRect的每次赋值代码。



查看完整回答
反对 回复 2022-05-04
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

add是个方法名字,你没有这个方法自然报错;
new是创建新对象必须的关键字,当然不能省略,new后面跟的是对象的构造函数,一般规范来说方法名称的首字母小写,构造函数的名称跟类名一样,首字母是大写的

查看完整回答
反对 回复 2022-05-04
  • 2 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信