Java 如何编写单一责任原则
我有菜单课。菜单类提供链接。每个链接都有图标和文本。Java 如何编写单一责任原则,java,oop,Java,Oop,我有菜单课。菜单类提供链接。每个链接都有图标和文本。 哪个类应该从IconId创建位图? 如果链接类将生成位图,则它违反SRP。 如果helper类将构建位图,则它是惰性类。 什么是对的 public abstract class Link { private int iconId; private String description; /* getters */ public abstract void action(); } 这取决于你的设计范围 如果
哪个类应该从IconId创建位图?
如果链接类将生成位图,则它违反SRP。
如果helper类将构建位图,则它是惰性类。
什么是对的
public abstract class Link {
private int iconId;
private String description;
/* getters */
public abstract void action();
}
这取决于你的设计范围 如果所有链接类都具有相同的位图类型图像,那么将图像解析机制放在抽象类本身中可能是有意义的 另一方面,如果有不同的图像类型和格式,则必须将图像分辨率委托给扩展类。例如,您可以使用
公共类GifImageLink extends Link
,该类将负责解析Gif图像类型,而Gif图像类型又可以委托给其他一些单例类