问一个关于JAVA的问题,就是在JAVA中函数的参数可以有缺省值吗?在C++可以用例如:
void function (int i=10,int j=20)
{
//……
}
来实现,但是JAVA中我不知道如何实现呀

解决方案 »

  1.   

    你这样没有意义啊
    class A

      private int a=23;   
      public A(){}
      
      public SetA(int a)
      {
        a=this.a;
      }  
      public function(int a)
      {
       a=this.a;  
      }
    }这里的function方法中的a.默认为23.如想改变a的值.要先调用SetA()方法
      

  2.   

    缺省值的意义在于例如我的void function(int i=10){}
    如果我调用的时候没有给数据 void function(),那么函数的参数就是默认值,如果给了数据给形参那么 void function(60) 函数的参数值就是60。
    这个在C++中是这样实现的但是在JAVA中类似的方法如何实现呢?
      

  3.   

    java里这样不行对于void function(int i=10){}这样的函数要使用默认值的话
    你可以通过重载一个无参数函数
    void function(){
        function(10);}来实现
      

  4.   

    支持 acd123456(低智商野蛮人) ,看看jdk的源码,很多这样写的 
      

  5.   

    那你这样啊,写两个function.一个有参数一个没有参数.不给值时就是23.给值就等于你的值
      public function()
      {
       int a=23;
      }
      public function(int a)
      {
      }
      

  6.   

    原理JAVA里面只能函数重载呀,明白了。