Java面向对象|回顾方法的调用

方法的调用:递归

  • 方法的调用

    • 静态方法
    • 非静态方法
    • 形参和实参
    • 值的传递和引用传递
    • this关键字

Demo02

代码1

package fun.sijia.kuang.oop.demo01;

public class demo02 {

    //静态方法  static
    //非静态方法
    public static void main(String[] args) {
        //实例化整个类 new
        //对象类型 对象名 = 对象值;
        Student student = new Student();
        student.say();

    }


    //和类一起加载
    public static void a(){
        //b();
    }
    //类实例化之后才存在
    public void b(){

    }
}

代码2(Student类)

package fun.sijia.kuang.oop.demo01;

// 学生类
public class Student {

    //方法
    public void say(){
        System.out.println("学生说话了");
    }

}

运行结果

学生说话了

demo03

代码

package fun.sijia.kuang.oop.demo01;

public class demo03 {
    public static void main(String[] args) {
        //实际参数和形式参数的类型必须要对于应
        int add = demo03.add(4, 5);
        System.out.println(add);
    }

    public static int add(int a,int b){
        return a+b;
    }
}

运行结果

9

demo04

代码

package fun.sijia.kuang.oop.demo01;

//值传递
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;
    }

}

运行结果

1
1

demo05

代码

package fun.sijia.kuang.oop.demo01;

// 引用传递:对象,本质还是值传递

//对象 内存!
public class demo05 {
    public static void main(String[] args) {
        Perosn perosn = new Perosn();
        System.out.println(perosn.name);//null

        demo05.change(perosn);
        System.out.println(perosn.name);

    }

    public static void change(Perosn perosn){
        //perosn是一个对象:指向的 ---> Perosn preosn = new Perosn();这是一个具体的人,可以改变属性!
        perosn.name = "斯嘉";
    }
}


// 定义一个Perosn类,有一个属性:name
class Perosn{
    String name;
}

运行结果

null
斯嘉
无标签
评论区
头像
    头像
    cusbquavso
      

    这篇文章不错!

文章目录