1.回顾方法
1.方法的定义
package com.oop.demo01;
import java.io.IOException;
// Demo01 类
public class Demo01 {
//main 方法
public static void main(String[] args) {
}
/*
修饰符 返回值类型 方法名(...){
//方法体
return 返回值;
*/
//return 结束方法,返回一个结果
public String sayHello(){
return "Hello World!";
}
public void hello(){
return ;
}
public int max(int a,int b){
return a>b ? a : b;//三元运算符
}
//数组下标越界: Arrayindexoutofbounds
public void readFile(String file)throws IOException{
}
}
-
修饰符
-
返回类型
-
break:跳出switch,结束循环。其和return的区别
-
方法名:注意规范,见面知意。
-
参数列表:(参数类型,参数名)…
-
异常抛出:疑问,后面讲解
2.方法的调用
-
静态方法
package com.oop.demo01; public class Demo02 { //静态方法 static //非静态方法 public static void main(String[] args) { Student.say1();//静态方法 //非静态方法 :实例化这个类 new //对象类型 对象名 = 对象值; Student student = new Student(); student.say2(); } //静态方法和类一起加载的 public static void a(){ // b(); } //非静态方法 是类实例化之后才存在 public void b(){ } }
-
非静态方法
IDEA中 快捷键alt+enter 为自动补齐
-
形参和实参
package com.oop.demo01; public class Demo03 { public static void main(String[] args) { Demo03 demo03 = new Demo03(); //实际参数和形式参数的类型要对应 int add = demo03.add(1,3); System.out.println(add); } public int add(int a, int b){ return a+b; } }
-
值传递和引用传递
package com.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);// a:1 } //返回值为空 public static void change(int a){ a = 10; } }
package com.oop.demo01; //引用传递 : 对象,本质还是值传递 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;//null }
-
this关键字