回顾方法以及加深
方法的定义
- 修饰符
- 返回类型
/**Demo01 类
*
*/
public class Demo01 {
//main方法
public static void main(String[] args){
}
/*
修饰符 返回值类型 方法名(...){
//方法体
return 返回值;
}
*/
- break:跳出switch,结束循环; return:代表结束此方法
//return 结束方法,返回一个结果
public String sayHello(){
return "hello,world"; //return 表示方法结束,
//break 跳出switch,结束循环
}
public void print(){
return;
}
public int max(int a,int b){ //a和b是形式参数
//三元运算符
return a>b ? a : b;
- 方法名:注意规范(驼峰原则),见名知意
- 参数列表:(参数类型,参数名)…
方法的调用: 递归
- 静态方法
- 非静态方法
// 静态方法 statica
// 非静态方法
public static void main(String[] args){
//实例化这个类
//对象类型 对象名字 = 对象值
Student student = new Student();
student.say();
}
//和类一起加载的
public void a(){
b();
}
//类实例化之后才存在的
public void b(){
}
- 形参和实参
public static void main(String[] args) {
/*
调用
1.new Demo03().add()
2.加static改为静态方法
*/
//实际参数和形式参数的类型要一致
int add = Demo03.add(1, 2);//实际参数
System.out.println(add);
}
public static int add(int a,int b){ //形式参数
return a+b;
}
- 值传递和引用传递
值传递:
//值传递
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;
}
}
输出结果:1
1
引用传递:
//引用传递:对象,本质还是值传递
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
}
输出结果:null
江紫文