Java的六大设计原则有哪些?极悦小编来为大家进行介绍。
单一职责原则就是一个接口或者类只有一个原因引起变化,即一个接口或者类只有一个职责,负责一件事情。(此原则同样适用于方法)
好处:
(1)复杂性降低;
(2)可读性提高;
(3)可维护性提高;
(4)变更风险降低
定义解释:
(1)子类必须完全实现父类的方法;
(2)子类可以有自己的个性;
(3)覆盖或者实现父类的方法时,输入参数可以被放大;
public class Father {undefined
public Collection doSomething(HashMap map) {undefined
System.out.println("父类被执行了");
return map.values();
}
}
public class Son extends Father {undefined
public Collection doSomething(Map map) {undefined
System.out.println("子类被执行了");
return map.values();
}
}
public static void main(String[] args) {undefined
Father father = new Father();
Son son = new Son();
HashMap<Object,Object> map = new HashMap<>();
father.doSomething(map);
son.doSomething(map);
}
以上代码执行时,子类重载了父类的doSomething方法,并且放大输入参数Hashmap→Map,执行以后,出现相同的结果,
均输出"父类被执行了",并没有歪曲父类的意图,不会引起业务逻辑混乱,符合里氏替换原则。
(4)覆写或者实现父类的方法时,输出结果可以被缩小;
(1)高层不应该依赖底层,两者都应该依赖其抽象;
(2)抽象不应该依赖细节,细节应该依赖抽象;
即模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或者抽象类产生的。
更加简单的定义就是"面向接口编程(OOD:Object-Oriented Design)"
定义解释:
(1)接口要尽量小
(2)接口要高内聚,高内聚就是尽量减少公布public方法
(3)接口要为个体提供定制服务,即只提供访问者需要的方法
(4)接口设计是有限度的
通俗的讲,接口尽量细化,同时接口中的方法尽量少。
说明:单一职责原则侧重于业务逻辑,即职责尽量少;而接口隔离原则侧重于接口中的方法尽量少。
也称为最少知识原则:一个对象应该对其他对象有最少的了解。通俗的讲:一个类应该对自己需要耦合或者调用的类知道的越少越好,感兴趣的小伙伴可以关注一下本站的迪米特法则技术文档,里面有更丰富的知识等着大家去学习。
软件实体应该对扩展开放,对修改关闭。就是说应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习