当前位置:  开发笔记 > 编程语言 > 正文

重载真的是获取Java中方法参数的默认值的唯一方法吗?

如何解决《重载真的是获取Java中方法参数的默认值的唯一方法吗?》经验,为你挑选了1个好方法。

我是Java的新手,从Python和PHP,我习惯了函数参数的默认值.

所以我养成了编写方法的习惯,这些方法旨在从稍微不同的情况调用,你只想设置一些值.例如,在我的PHP代码中,这种情况很常见,因为我有工厂方法为对象实例提供稍微不同的属性.

在Java中,似乎我必须有一个方法需要所有参数,然后是几个重载的变量,这些变量将调用该方法,其中一些参数设置为默认值,一些参数由调用者提供.哪,好吧,好吧,但有时会让我紧张.

我记得在C++和ActionScript的一些简短的短途旅行中,这已经让我烦恼了.现在,更有经验的Java开发人员有这方面的一些捷径吗?

在我看来,从技术上讲,这个问题已被所有帖子的总和所回答为"是的,它是".我在下面打开了一个wiki帖子来收集各种替代解决方案,如果您愿意,请提供帮助.我发现所有这些都非常有用,可以作为典型Java构造的灵感和学习示例.



1> Jon Skeet..:

另一个选项是构建器模式的变体 - 您有一个表示所有参数的类型,构造该类型的实例(相应地默认),设置所需的属性,然后将结果传递给原始方法,或者添加"参数类型"中的方法为您调用该方法.

您可以在标准库中使用ProcessBuilderProcess类看到这一点.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有