Java 方法的调用
同为一个类下的普通方法可以随意调用
静态方法与非静态方法
静态方法 static
如果同为 static 方法可以直接调用
static是和类一起加载的
非静态方法
不可以直接调用,需要实例化类 new 对象类型 对象名 = 对象值;
形参和实参
形数为一个名字
实参为一个真实的值
package com.oop.Demo1;
public class Demo3 {
public static void main(String[] args) {
// add(1,2) 1,2 为实参
int add = add(1, 2);
System.out.println(add);
}
// (int a, int b) 形参
public static int add(int a, int b){
return a+b;
}
}
实际参数和形式参数的类型需要一一对应
值传递与引用传递
值传递
package com.oop.Demo1;
// 值传递
public class Demo4 {
public static void main(String[] args) {
int a = 1;
System.out.println(a); // 1
change(a);
System.out.println(a);
}
public static void change(int a){
a = 10;
}
}
引用传递
package com.oop.Demo1;
// 引用传递:对象 本质还是值传递
public class Demo5 {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.name); // null
Demo5.change(person);
System.out.println(person.name); // 七七
}
public static void change(Person person){
// person 是一个对象,指向的是 Person 这个类,这是一个具体的,可以改变属性
person.name = "七七";
}
}
// 定义一个Person类,有一个属性:name
class Person{
String name; // null
}