1700441063
编写高质量代码:改善Java程序的151个建议 建议34:构造函数尽量简化
1700441064
1700441065
我们知道在通过new关键字生成对象时必然会调用构造函数,构造函数的简繁情况会直接影响实例对象的创建是否繁琐。在项目开发中,我们一般都会制订构造函数尽量简单,尽可能不抛异常,尽量不做复杂算法等规范,那如果一个构造函数确实复杂了会怎么样?我们来看一段代码:
1700441066
1700441067
public class Client{
1700441068
1700441069
public static void main(String[]args){
1700441070
1700441071
Server s=new SimpleServer(1000);
1700441072
1700441073
}
1700441074
1700441075
}
1700441076
1700441077
//定义一个服务
1700441078
1700441079
abstract class Server{
1700441080
1700441081
public final static int DEFAULT_PORT=40000;
1700441082
1700441083
public Server(){
1700441084
1700441085
//获得子类提供的端口号
1700441086
1700441087
int port=getPort();
1700441088
1700441089
System.out.println(“端口号:”+port);
1700441090
1700441091
/*进行监听动作*/
1700441092
1700441093
}
1700441094
1700441095
//由子类提供端口号,并做可用性检查
1700441096
1700441097
protected abstract int getPort();
1700441098
1700441099
}
1700441100
1700441101
class SimpleServer extends Server{
1700441102
1700441103
private int port=100;
1700441104
1700441105
//初始化传递一个端口号
1700441106
1700441107
public SimpleServer(int_port){
1700441108
1700441109
port=_port;
1700441110
1700441111
}
[
上一页 ]
[ :1.700441062e+09 ]
[
下一页 ]