方法同名,参数用来区分各个方法,如下
void test()
void test(int a)
double test(double a)这样做的好处就是
当你没有参数时可使用方法一,
有整形参数时可使用方法二,
有double参数时可以使用方法三,给大家提供多种选择,这就是所谓的重载

解决方案 »

  1.   

    重载是有用处的
    比如:
    public class Test {
    Connection conn = null;
    Test()
    {

    conn = ....//取得一个默认连接,或者从配置信息中得到连接。
    }
    Test(Connection c)
    {
    conn = c;
    }
             Test(String driver,String url,String name,String pass)
    {
    //根据传入的参数获得连接
    } }
    这样test类就有多种获得数据库连接的方式。
      

  2.   

    编译的时候所谓重载的方法名都会重写
    void a(B b)-->a_B
    void a(A a)-->a_A重载只是让人类看起来方便一点
      

  3.   

    star_str(生命火花) ( ) 信誉:100    Blog  2006-11-21 0:25:11  得分: 0     
    我觉得应该从 OO 的角度来说明这个问题重载是数据抽象的一种表现!某一种对象某个行为并不是只有1中方法来实现!而同一个行为其实在程序中的表示就是一个方法名!重载就表达了"某一种对象某个行为并不是只有1中方法来实现" 这句话!-----------------------------------------------------------------------------------
    我同意这个说法  
     
      

  4.   

    star_str(生命火花) ( ) 信誉:100    Blog  2006-11-21 0:25:11  得分: 0     
    我觉得应该从 OO 的角度来说明这个问题重载是数据抽象的一种表现!某一种对象某个行为并不是只有1中方法来实现!而同一个行为其实在程序中的表示就是一个方法名!重载就表达了"某一种对象某个行为并不是只有1中方法来实现" 这句话!-----------------------------------------------------------------------------------
    说的不错啊
    重载带来了很大的方便
      

  5.   

    编译的时候所谓重载的方法名都会重写
    void a(B b)-->a_B
    void a(A a)-->a_A重载只是让人类看起来方便一点
    ==================================================
    无语..不知道这个是那里来的观点,去读读虚拟机规范吧,java中是依靠方法名+参数序列来确定一个方法的.根本不存在重载的两个方法编译时会重新写名字.
      

  6.   

    重载可能做好多的事,觉得很有用的,动态,可以减少N多的重复代码, 类层次一多,没有重载就疯了,看看API吧,有多少的重载方法,