教授编写的Futbollisti类未添加emri的set方法,是否存在错误?
关于Futbollisti类中emri属性缺少set方法的疑问解答
首先明确一点:这段参考代码没有语法错误,但是否符合作业要求需要结合作业描述的细节来判断,下面分两种场景分析:
1. 从代码设计逻辑看,这是合理的选择
教授不给emri(球员姓名)添加set方法,大概率是把这个属性设计成**只读(不可变)**的——意思是球员对象创建时通过构造函数确定姓名,之后不允许修改。这是很常见的面向对象设计思路:对于一些不应该在对象生命周期内随意变更的属性,只提供getter而不提供setter,能避免非法修改,保证数据的一致性,也符合现实中“球员姓名不会随便更改”的业务逻辑。
2. 是否符合作业要求?
作业描述里提到“为所需属性提供get和set方法”,核心在于**“所需”**这个关键词:
- 如果作业明确要求三个属性必须全部配备get和set方法,那这段代码就不符合要求,遗漏了
setEmri()方法; - 如果作业里的“所需”是指根据业务逻辑或设计需求来决定,那教授的写法完全合理——毕竟不是所有属性都需要被修改的入口。
补充:如果需要补上setEmri方法,代码示例如下
public void setEmri(String e) { emri = e; }
内容的提问来源于stack exchange,提问作者Anil
相关产品推荐
相关产品推荐

