黑马程序员技术交流社区

标题: 函数的重载(overload) [打印本页]

作者: 小二儿    时间: 2015-9-11 11:59
标题: 函数的重载(overload)
(视频很重要)
函数的重载(overload)
重载:顾名思义就是重复载入。在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不用即可。(或者,不是和)
函数名字的重复。
重载的特点:与返回值类型无关,只看参数列表。
//函数的重载
class Demo11
{
        public static void main(String[] args)
        {
                printCFB(9);
                add(1,2);//传递的函数是1,2,则自动调用第一个,是java虚拟机自动去找虚拟函数
                System.out.println("hello world");
        }
       

/*函数的重载:1,同一个类,2,同名,3,参数个数不同or 参数类型不同,4函数重载和返回值类型无关,5,java是严谨性语言,如果函数出现调用的不确定性,编译会失败
*/


作者: MilesMatheson    时间: 2015-9-11 14:47
假设有如下方法:
public  static int add( int a, int b)
{
    return a+b;
}


public  static int add( int a, byte b)
{
    return a+b;
}
请问,你的add回去找哪个方法?
作者: 德胜    时间: 2015-9-11 14:54
还没接触过
作者: MilesMatheson    时间: 2015-9-11 15:12
MilesMatheson 发表于 2015-9-11 14:47
假设有如下方法:
public  static int add( int a, int b)
{

翻开课本p59-p61,显然他们在同一个类里面。
作者: 插兜    时间: 2015-9-11 16:49
哪里有课本啊,还没考试啊
作者: 小二儿    时间: 2015-9-11 16:50
MilesMatheson 发表于 2015-9-11 14:47
假设有如下方法:
public  static int add( int a, int b)
{

你是想说,会不会出现模棱两可的状态,不会出现模棱两可的,java 语言是严谨的,add里传递的是int 会自动
到int a,int b 里
作者: 小二儿    时间: 2015-9-11 16:52
MilesMatheson 发表于 2015-9-11 14:47
假设有如下方法:
public  static int add( int a, int b)
{

你这样打出代码来,本身编译就会报错了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2