2 dreamriver   Dreamriver___ 于 2016.03.09 19:55 提问

请问可见性为private的方法可以作为重载方法吗?

有这样一个方法 public void f( ){ },那么方法 private int f( int m){ }是它的重载方法吗?

5个回答

qq_18646755
qq_18646755   2016.03.09 20:06

算是的,只要参数不同即可

qaws1ed
qaws1ed   2016.03.09 20:16

对于同一个类,如果这个类里面有两个或者多个重名的方法,但是方法的参数个数、类型、顺序至少有一个不一样,这时候局构成方法重载。

visoncomputer
visoncomputer   2016.03.09 20:16

可以,但不能对private修饰的方法重写。

visoncomputer
visoncomputer   2016.03.09 20:17

可以,但不能对private修饰的方法重写。

lianshaohua
lianshaohua 为什么不可以呢?
2 年多之前 回复
lx624909677
lx624909677   Ds   Rxr 2016.03.09 21:51

能不能重载是由形参,返回值,函数名决定的,和作用域没有关系,作用域是用来控制访问权限的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java 私有方法能否重载
先看下面的一个例子:public class Test extends Xx    {          private void m()          {                System.out.println("Hello Test!");           }           public static void main(String [] args)    
Java重载陷阱:“覆盖”私有方法
总结在Java中,只有非private方法才可以被覆盖;但是还需要密切注意覆盖private方法的现象,虽然编译器不会报错,但是也不会按照我们所期望的来执行。确切地说,在导出类中,对于基类中的private方法,最好采用不同的名字。示例public class PrivateOverride{ private void f(){print("private f()";} public
为什么不能用返回值类型来判断方法是否重载呢?
方法重载定义: 如果一个类中出现了两个及两个以上的方法的方法名相同,形参列表不同,则被称为方法重载。 判断方法重载的依据就是: 两痛一不同。 同一个类下的相同方法名,不同的参数列表。说白就是签名区别 至于其他部分比如:返回值类型,修饰符都没有关系。为啥为什么不能用返回值类型来判断方法是否重载呢? 就比如 int f(){} 和 void f(){} 在main方法中调用时
java public protected 默认 还有private修饰后的可见性,访问权限
一直对public protected 默认 还有private的可见性理解的不透彻,用代码实践并记录下来,加深自己的理解。
经典的 Java main方法面试题
1.不用main方法如何定义一个类?     不行,没有main方法我们不能运行Java类。      在Java 7之前,你可以通过使用静态初始化运行Java类。但是,从Java 7开始就行不通了。 2.main()方法需要的参数不是字符串数组?     不是的,main()方法的参数必须是字符串数组。     但是,在引进变参时,你可以将字符串类型的变参作为参
Java中private方法能重写吗?
问题:Java中private方法能重写吗? 下面是测试代码 public class A { private void print() { System.out.println("A"); } public static void main(String[] args) { A a = new B(); a.
方法的重载与返回值没有关系
没有关系。。。。。。。            方法重载跟返回值类型和修饰符无关   Java的重载 是发生在本类中的,重载的条件是在本类中有多个方法名相同,但参数列表不同(可能是,参数个数不同,参数类型不同),跟返回值无关。  我们可以举个例子,假如我们在同一个类中,写了两个方法名相同并且参数列表也相同,只是返回值不同,public Stringshow(int number)  public
只能靠参数而不能靠返回值类型的不同来区分重载函数
void function(void);int function (void);上述两个函数,第一个没有返回值,第二个的返回值是int类型。如果这样调用函数:  int x = function ();则可以判断出function是第二个函数。问题是在c++/c程序中,我们可以忽略函数的返回值。在这种情况下,编译器和程序员都不知道哪个function函数被调用。   所以只能靠参数而不能靠返回值类
Java中方法的重载与覆写的区别
方法的重载是指在一个类中定义方法名称相同的多个函数,每个函数的参数个数或者参数类型不同。 方法的覆写是指在子类重写父类中的方法,方法的覆写重点需要关注权限问题。 主要区别如下: 区别点 重载 覆写 单词 Overloading Overriding 定义 方法名称相同,参数的个数或者类型不同 方法名称、参数类型、返回值类型全部相同 权限 没有权限要求
子类不能对父类private方法重写
看到这样一段代码public class A { private void print() { System.out.println("A"); } public static void main(String[] args) { A a = new B(); a.print(); B b = new B();