同一个名字的两个函数返回不同类型的数据
public String getValues (String name)和
public int getValues (String name)
函数名和参数都是一样的,
返回类型一个是String,另一个是int
但是报错:“Duplicate method getValues(String) in type”
怎么解决这个问题啊?
这不是重载吗?怎么会报错? --------------------编程问答-------------------- 重载只看参数,不看返回数值 --------------------编程问答-------------------- 不要重复定义。 --------------------编程问答-------------------- 那怎么解决呢?只能改函数名字? --------------------编程问答-------------------- 重载是基于方法签名进行的
即虽然方法名是一样的但编译后的方法签名其实是不同的,以此区分不同的方法
但方法签名中只包含方法名和参数类型,不包括返回值
因为重载方法时,同名方法需要在参数类型或参数数量上有所区别
想lz的代码中,方法名相同、方法参数数量相同、方法参数类型相同,编译时会被认为是同一个方法被定义了两次 --------------------编程问答--------------------
可以在其中一个方法中增加一个参数即可 调用的时候直接传个null值
列如:
public String getValues (String name)
public int getValues (String name)
改成
public String getValues (String name,String flag)
public int getValues (String name) --------------------编程问答-------------------- 重载是方法名相同
参数不同的方法
返回类型可以不同 --------------------编程问答-------------------- 这种技术也能当中科院院士 --------------------编程问答-------------------- --!
重载定义再看看哈...
补充:移动开发 , Android