在Java方法中用默认值模拟参数的2种方法

108 阅读1分钟

照片:Trung ThanhonUnsplash

今年,我的公司要举办一个技术兴趣活动,前端和后端互相学习技术栈。一个前端的同事突然给我发了一段java代码。

public class A{

他问我`int b = 0`为什么IntelliJ IDEA显示错误,CJavaScript都支持?
我开玩笑地告诉他,这是java的一个特点。

回到主题,我认为java抛弃这种语法糖是一个错误的选择。默认值给我们带来了很多的方便。幸运的是,我们可以通过两种方式来弥补它。

1方法重载

public void foo(String a, Integer b) {

这种方法的局限性之一是,如果你有两个相同类型的可选参数,而其中任何一个都可以省略,那么它就不起作用了。

2 构建器模式

构建器模式用于构建器 ,通过引入一个单独的构建器类来实现。

medium.com/media/ffd4b…

结论

我认为java抛弃这种句法糖是一个错误的选择。

如果你有不同的观点,请发表评论。

参考文献

[1]stackoverflow.com/questions/9…


Java方法中用默认值模拟参数的2种方法最初发表于Medium上的Javarevisited,人们在这里通过强调和回应这个故事来继续对话。