代码里的世界观——通往架构师之路

随笔分类 - 《代码里的世界观》
用最直接的大白话来聊一聊Java中的反射机制

案例1

张牙舞爪的if-else

复制代码

if(type == "mp4"){
    
    
    isValid = true;
}else if(type == "txt"){
    
    
   isValid = true;
}else{
    
    
 ....
}

复制代码
用数组装变化的数据

string[] validTypeArray = {
    
    "mp4","txt","ppt",...}

bool isValidFileType(string type){
    
    
    return validTypeArray.Contains(type);
}

案例2

在批量处理数据的时候遇到一个特殊数据需要进行特别处理

//处理特殊数据,并进行额外操作

if(number == "123"){
    
    
    DoSomething();
}

这样做不是一个好办法,因为他没有预见变化。

版本2:把数据隔离到一个数组里面

复制代码
//定义一个数组去承载这些特殊函数

Array exceptionNumbers = {
    
    
    "123","456"
};


//定义一个判断函数
bool  isExceptionNumber(string number){
    
    
    return exceptionNumbers.contains(number);
}
if(isExceptionNumber(string number)){
    
    
    DoSomething();
}

复制代码
  版本3:在数据驱动方法里,数据源可以转换形式,更换位置。比如将数组的数据移植到配置文件,这样它对主体代码完全是透明的,修改的风险明显降低

猜你喜欢

转载自blog.csdn.net/u013321328/article/details/108018694