回顾方法的调用
作者:互联网
1 package oop.demo01; 2 3 public class Demo02 { 4 5 public static void main(String[] args) { 6 //静态方法 + static //类名.方法名 7 Student.say(); 8 9 //非静态方法 10 //Student.say2();//此方法不能用 11 //解决办法:①先实例化这个类 通过new这个关键词 12 new Student().say2(); 13 //②对象类型 对象名 = 对象值; 14 Student student = new Student(); 15 student.say2(); 16 } 17 18 public void a(){ 19 b();//若两个方法都是非静态的,可相互调用 20 } 21 public void b(){ 22 a(); 23 } 24 public static void a2(){//若两个方法都是静态的,也可相互调用 25 b2(); 26 } 27 public static void b2(){ 28 a2(); 29 } 30 //若一个方法为静态,另一个方法为非静态,不可相互调用 31 //原因:static是和类一起加载的,而非静态的方法,类实例化,之后才存在 32 33 }
1 package oop.demo01; 2 //学生类 3 public class Student { 4 //静态方法 5 public static void say(){ 6 System.out.println("学生说话了!"); 7 } 8 //非静态方法 9 public void say2(){ 10 System.out.println("学生又说话了!"); 11 } 12 }
1 package oop.demo01; 2 3 public class Demo03 { 4 public static void main(String[] args) { 5 //非静态方法 6 new Demo03().add(5,8);//方法1 7 Demo03 demo03 = new Demo03();//方法2 8 demo03.add(5,8); 9 //静态方法 10 Demo03.add2(4,10);//实参 11 } 12 public int add(int a, int b){//形参 13 return a + b ; 14 } 15 public static int add2(int c , int d){ 16 return c + d; 17 } 18 //实际参数和形式参数的类型要对应! 19 }
值传递:
1 package oop.demo01; 2 3 public class Demo04 { 4 public static void main(String[] args) { 5 int a = 1; 6 System.out.println(a);//1 7 Demo04.change(a); 8 System.out.println(a);//1:值传递 9 } 10 //返回值为空 11 public static void change(int a){ 12 a = 10; 13 } 14 }
引用传递:
1 package oop.demo01; 2 //引用传递:对象 但本质还是值传递 3 public class Demo05 { 4 public static void main(String[] args) { 5 Person person = new Person(); 6 System.out.println(person.name);//null 7 8 Demo05.change(person); 9 System.out.println(person.name);//yy 10 } 11 public static void change(Person person){ 12 //person是一个对象 指向的 Person person = new Person(); 这是一个具体的人,可以改变属性! 13 person.name = "yy"; 14 } 15 } 16 //一个类中可以有多个class,但只能有一个public class 17 //定义了一个Person类,有个属性叫name 18 class Person{ 19 String name; 20 }
标签:调用,回顾,int,void,class,person,static,方法,public 来源: https://www.cnblogs.com/Boss7yy/p/16685256.html