方法回顾及加深
方法的调用:
1. 静态方法和非静态方法
Demo02.java文件
public class Demo02 {
public static void main(String[] args) {
//Student.say();
//实例化这个类new
//对象类型 对象名 = 对象值;
Student student = new Student();
student.say();
}
//和类一起加载 //静态方法
public static void a(){
// b();
}
//类实例化之后才存在 // 非静态方法
public void b(){
}
}
Student.java文件
public class Student {
public void say() {
System.out.println("学生");
}
}
2. 形参和实参
public class Demo03 {
public static void main(String[] args) {
int add = Demo03.add(1, 2);
System.out.println(add);
}
public static int add(int a, int b) {
return a+b;
}
}
3. 值传递和引用传递
值传递
//值传递
public class Demo04 {
public static void main(String[] args) {
int a = 1;
System.out.println(a); // 1
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是一个对象:指向的是Person person = new Person;这个是具体的人,可以改变属性!
person.name = "练练" ;
}
}
//定义了一个person类,有一个属性:name
class Person{
String name;
}