JAVA中方法的调用【基础】

一、调用本类中的方法

方法一、被调用方法声明为static ,可以在其他方法中直接调用。示例代码如下:

复制代码
public class HelloWord {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String str="HelloWord!";
        int a=0;
        int b=a+1;
        int result=0;
        
        for(int i=0;i<20;i++)
        {
            //Add方法调用
            result= Add(a,b);            
            
            System.out.println(str+" "+ result);
            
            a+=i;
            
        }
    }
    /**
     * 被调用方法,这里使用了static声明为静态方法
     * @param x 
     * @param y
     * @return
     */
    private static int Add(int x,int y)
    {
        
        return x+y;
    }
}
复制代码

方法二、被调用方法,没被static修饰,不是静态方法。调用时需要通过类的实例化进行调用。示例如下:

复制代码
public class HelloWord {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String str="HelloWord!";
        int a=0;
        int b=a+1;
        int result=0;
        
        for(int i=0;i<20;i++)
        {
            //Add方法调用
            //类的实例化
            HelloWord helloword=new HelloWord();
            
            //通过实例化的类进行Add方法调用
            result=helloword.Add(a, b);                        
            
            System.out.println(str+" "+ result);
            
            a+=i;
            
        }
    }
    /**
     * 被调用方法,没被static修饰,不是静态方法。调用时需要通过类的实例化进行调用
     * @param x 
     * @param y
     * @return
     */
    private int Add(int x,int y)
    {
        
        return x+y;
    }
}
复制代码

 

二、调用外部的类的方法,通过类的实例化进行调用。示例代码如下:

外部的类:

复制代码
 1 public class Test {
 2     /**
 3      * 被调用方法Add
 4      * @param x 
 5      * @param y
 6      * @return
 7      */
 8     public int Add(int x,int y)
 9     {
10         
11         return x+y;
12     }
13     
14     /**
15      * 被调用方法Sub
16      * @param x 
17      * @param y
18      * @return
19      */
20     public static int Sub(int x,int y)
21     {
22         
23         return x-y;
24     }
25 }
复制代码

 

调用:

复制代码
public class HelloWord {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String str="HelloWord!";
        int a=5;
        int b=a+1;
        int result=0;
        
        for(int i=0;i<20;i++)
        {
            //Add方法调用
            //类的实例化
            Test test=new Test();
            
            //通过实例化的类进行Add方法调用
            result=test.Add(a, b);                        
            
            System.out.println(str+" "+ result);
            
            result=test.Sub(b, 1);                        
            
            System.out.println(str+" "+ result);
            
            a+=i;
            
        }
    }
    
}