感觉都是一种理论层面的东西。

解决方案 »

  1.   

    System.out.println()
    这个方法支持各种类型的参数,就是通过重载实现的.
    java中的这种现象太普遍了.
      

  2.   

    存在这样的情况:
    int add(int a,int b){...}
    由于某些原因,你又不得不写:
    doublt add(double a,double b){...}
    或是其它如:
    long add(long a,long b){...}
    而你又希望只用一个add(a,b)就可以搞定,此时可以用到重载
      

  3.   

    存在这样的情况:
    int add(int a,int b){...}
    由于某些原因,你又不得不写:
    doublt add(double a,double b){...}
    或是其它如:
    long add(long a,long b){...}
    而你又希望只用一个add(a,b)就可以搞定,此时可以用到重载
      

  4.   

    每次見到重載與重寫這兩個字眼都要loading一下...overload..
    常用中有很多類有overload方法的,如String.valueOf();...自己想想
      

  5.   

    很普遍啊~比如自己写一个返回日期格式的函数。但是,有时调用的时候需要各种不同的样式(2008-10-1 2008/10/1)。这个时候就可以重载。当然,你也可以写2个不同名字的函数。但是,别人看起来就不习惯了。就像System.out.println()  可以输出整形,也可以输出字符串。你只需要记忆1个函数就可以了。我是这样理解的,不知道对你有没有帮助。
      

  6.   

    很普遍啊~比如自己写一个返回日期格式的函数。但是,有时调用的时候需要各种不同的样式(2008-10-1 2008/10/1)。这个时候就可以重载。当然,你也可以写2个不同名字的函数。但是,别人看起来就不习惯了。就像System.out.println()  可以输出整形,也可以输出字符串。你只需要记忆1个函数就可以了。我是这样理解的,不知道对你有没有帮助。
      

  7.   

    很普遍啊~比如自己写一个返回日期格式的函数。但是,有时调用的时候需要各种不同的样式(2008-10-1 2008/10/1)。这个时候就可以重载。当然,你也可以写2个不同名字的函数。但是,别人看起来就不习惯了。就像System.out.println()  可以输出整形,也可以输出字符串。你只需要记忆1个函数就可以了。我是这样理解的,不知道对你有没有帮助。
      

  8.   

    老师给我们讲的时候就是拿System.out.println() 举例的
    无论()里的参数是什么,都可以标准输出,这就是重载的一个好处
      

  9.   

      这是设计层的问题吧,因为我觉得重载的好处是使得在使用一个方法的,你不用考虑整合参数,而只要考虑求结果的时候,用重载。
      比放说System.out.print()。你只关心的是这个方法能够把你的要的数据输出,而不是放进去的是什么类型的值。
      要真正理解这个,不是单个语言上的问题。而是一种编程思想的能力了。这么多,能不能悟出来靠你自己了。
      

  10.   

    System.out.println() 这个关于任何参数的方法,在哪里定了它的实现的??
      

  11.   

     void  print(boolean b)
              打印 boolean 值。
     void  print(char c)
              打印字符。
     void  print(char[] s)
              打印字符数组。
     void  print(double d)
              打印双精度浮点数。
     void  print(float f)
              打印浮点数。
     void  print(int i)
              打印整数。
     void  print(long l)
              打印 long 整数。
     void  print(Object obj)
              打印对象。
     void  print(String s)
              打印字符串。
     PrintStream  printf(Locale l, String format, Object... args)
              使用指定格式字符串和参数将格式化的字符串写入此输出流的便捷方法。
     PrintStream  printf(String format, Object... args)
              使用指定格式字符串和参数将格式化的字符串写入此输出流的便捷方法。
     void  println()
              通过写入行分隔符字符串终止当前行。
     void  println(boolean x)
              打印 boolean 值,然后终止行。
     void  println(char x)
              打印字符,然后终止该行。
     void  println(char[] x)
              打印字符数组,然后终止该行。
     void  println(double x)
              打印 double,然后终止该行。
     void  println(float x)
              打印 float,然后终止该行。
     void  println(int x)
              打印整数,然后终止该行。
     void  println(long x)
              打印 long,然后终止该行。
     void  println(Object x)
              打印 Object,然后终止该行。
     void  println(String x)
              打印 String,然后终止该行。
      

  12.   

    为什么要用重载?举个不好的例子:
    interface Act {
    public void 走路(左脚,右脚);
    public void 走路(轮椅);
    }
    呵呵~
      

  13.   

    其实这个问题可以这样理解:
    假设问题如下:
    你现在需要通过实体类(User.java)添加用户.那么你可能需要这样的一个方法:void addUser(User user);
    这个方法是一定可以添加用户的.可是,你现在只能得到一个唯一的数据库中用户的ID,那么你可能就需要一个这样的方法://pid == 父结点ID
    void addUser(int pid) {
        User user = new User();
        ....
        //通过pid得到数据库里的用户相关信息,并调用addUser(user)进行存储.
        addUser(user);
    }......我一般做重载都会是对一个方法的扩展,打个比方,你可以选择各种方法到达你要去的地方,那怕你在在水上,那么我就给你一个船.你在陆地,我就给一个车.就是这样.这只是重载的一个用法.....
      

  14.   

    System.our.println();就是解释重载问题的一个好例子
      

  15.   

    public void InputObject(String s)
    {
        ....;
    }
    传入一个字符串,public void InputObject(ArrayList list)
    {
        ....;
    }传入一个ArrayList对象外部在调用InputObject的时候,看传入的参数是字符串还是ArrayList,如果传入字符串则调用1,如果传入ArrayList则调用2
    如果传入一个整型数组会发生什么情况,想想...哈哈哈哈哈哈