Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
同一类Java中的重载_Java_Overloading - Fatal编程技术网

同一类Java中的重载

同一类Java中的重载,java,overloading,Java,Overloading,我现在正试图理解重载,有点困惑。我知道当调用同一个方法时,它不能有完全相同的参数。例如,使用两个int变量调用一个方法,然后使用两个不同的int变量调用另一个方法。但是如果我使用int和float,就可以了。我知道返回类型并不重要,但它是公共方法还是私有方法呢。这有关系吗 例如,假设我调用public int name(int x)我可以调用private int name(int x) 我假设公共双名(String x)也会导致类中的重载,对吗?公共整数名(整数x,字符串y)是否有效?将字符串

我现在正试图理解重载,有点困惑。我知道当调用同一个方法时,它不能有完全相同的参数。例如,使用两个int变量调用一个方法,然后使用两个不同的int变量调用另一个方法。但是如果我使用int和float,就可以了。我知道返回类型并不重要,但它是公共方法还是私有方法呢。这有关系吗

例如,假设我调用
public int name(int x)
我可以调用
private int name(int x)

我假设
公共双名(String x)
也会导致类中的重载,对吗?
公共整数名(整数x,字符串y)
是否有效?将字符串参数传递给int函数?这会导致过载或错误吗

编辑:不要相信这个问题是重复的,我的主要问题是公共和私有之间的区别,它们是方法还是不同,是否会导致过载。未在其他问题中解决该问题。

来自:

重载方法通过传入方法的参数的数量和类型来区分

不能用相同的名称、相同数量和类型的参数声明多个方法,因为编译器无法区分它们

所以不,访问修饰符不算数。您不能同时拥有
公共int name(int x)
私有int name(int x)

我假设
公共双名(String x)
也会导致类中的重载,对吗

是,因为它的名称相同,但参数类型不同

公共整数名(整数x,字符串y)
是否有效?将字符串参数传递给int函数?这会导致过载或错误吗


同样,由于它有相同的方法名,但参数类型不同,因此它是一个重载方法。

与其问我们它是否有效,不如自己试试?发现是最好的学习方式。对不起,我不在我的开发人员电脑上,这台电脑上没有安装Java,不过我当然同意你的看法@人工尝试和错误并不一定能保证某些东西总是有效的。行为可能是未定义的或特定于实现的。那么
public int name(int x)
private int name(int x)
不会导致重载吗?由于public和private的原因,这两个方法在类中是完全不同的吗?谢谢你的回复,我理解其余的。@still2blue这两个方法甚至不能一起编译
private
public
不用于确定方法是否重载。