似乎如果我严格遵守单一责任原则,那么我可能必须添加公共getter以分割可能发生变化的功能.对我来说,这似乎违反了通过暴露对象内部结构的封装.
例如,假设我有一个表示上传文件的类.在过去,我使用像toHtml()这样的方法来避免getter并保持封装:
public class UploadedFile() { private String filename; private String uri; public String toHtml() { return <html string>; }