方法

1 方法的定义 

具体格式: public void setMoney(int money)  具体包含部分:1 修饰符2 返回值类型3方法名:注意规范 见名知意4参数列表:参数类型 参数名

2 方法的调用

1 静态方法

 

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;
    }

 

  

 

2 非静态方法

 

public class HelloWord {

    /**
     * @param args
     */
    public static void main(String[] args) {
       
        String str="HelloWord!";
        int a=0;
        int b=a+1;
        int result=0;
        
        for(int i=0;i<20;i++)
        {
           
            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;
    }
}

值传递和引用传递

值传递的过程

值传递

public class demo04 {
    public static void main(String[] args) {
        int a =1;
        System.out.println(a);
        //调用函数
        demo04.change(a);
        System.out.println(a);
        //结果为1 
    }
    //因为返回值为空
    public static  void  change (int a){
        a = 10;
    }
}

引用传递

public class Demo05 {
    public static void main(String[] args) {
        Person person = new Person();
        System.out.println(person.name);//结果为null
        Demo05.change(person); 
        System.out.println(person.name);//结果是美女
    }    

public static  void change(Person person){
        person.name= "美女";
        //preson 是一个对象,指向的是 Person person = new Person();这是一个具体的人,可以改变属性
    }
}
class Person{
    String name ;//默认值是null
posted @ 2021-01-17 18:33  想变成葡萄的橙子  阅读(32)  评论(0)    收藏  举报