方法的调用:递归
方法的调用
- 静态方法
- 非静态方法
- 形参和实参
- 值的传递和引用传递
- 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
斯嘉
这篇文章不错!