方法
1、方法的定义
- 方法的Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序代码组合 方法包含于类中
方法在程序中被创建,在其他地方被引用 定义 - 方法的优点
1、使程序变得更简短而清晰。
2、 有利于程序维护。
3、 可以提高程序开发的效率。
4、 提高了代码的重用性。
认识方法
方法: 解决问题的一种方案,他是有很多条java语句组成的
* 方法的一些特点:
* 1 方法执行的时候,可能需要原料。 原料就是 参数
2 方法执行完了以后,可能会给我们一个结果。 结果就是返回值
* 3 声明方法,其实就是在定义规则
方法的格式
方法的格式:
修饰符 返回值类型 方法名(参数类型 参数名){
…
方法体
…
return 返回值;
}
修饰符: public
返回值类型: 本质就是数据类型
方法名: 方法的名字(命名规范和变量的一样) 小驼峰
参数类型: 本质就是数据类型
参数名: 本质就是变量名
方法体: 就是一些java语句
return: 关键字,结束方法,一般用在返回值前面
返回值: 方法执行完以后,得到的结果。
注意事项:
1 返回值类型:跟返回值有关系;如果没有返回值,那么返回值类型就是void,然后也不用写return
2 参数类型: 跟参数有关系
3 定义方法,其实就是在定义规则。这个在方法调用的时候很关键。
例句
public String say(String name){
System.out.println("hello "+name);
return name;
}
public int add(int a,int b){
int c = a + b;
return c;
}
public void hello(){
System.out.println(“hello”);
} }
认识return
return:结束方法的。
return的结果要和返回值类型相对应
注意
1、若当前方法没有返回值类型,即返回值类型是void,那么当前方法中可以不写return
2、return即表示结束一个方法,也可以将返回值返回给调用当前方法的调用者
3、return返回值时一次只能返回一个值,不可以返回多个值
4、一个方法中可以有多个return,但被执行的只能有一个,所以需要判断
public String happy(String choose){
if(“旅游”.equals(choose)){
return “开心”;
}
return “难过”;
}
方法的实现
方法有4种
* 1. 无参无返回值
- public void say(){
System.out.println(“hello”);
}
- 无参有返回值,如果方法有返回值,那么这个方法调用的时候,就会有一个结果。这个结果可以赋值给一个变量
public String grilFriend(){
return “坤坤”;
- 有参无返回值
public void showFriend(String name){ System.out.println("坤的对象是:"+name);
4 有参有返回值
public int add(int a,int b){
int c = a + b;
return c;
方法的调用
方法的调用
* 1 方法想要执行,必须要调用
* 2 方法是谁执行的?方法是对象执行的
* 3 对象是哪里来的?对象是new出来的, new+方法所在的类名(); new + 构造方法()
* 4 对象调用方法: 对象.方法名(参数)
* 5 方执行的本质就是: 方法里的代码跑了一边。方法每被调用一次, 方法里的代码就执行一次。
*
基本数据类型,操作传递的是变量的值,改变一个变量的值不会影响另一个变量的值。
引用数据类型(类、数组和接口),赋值是把原对象的引用(可理解为内存地址)传递给另一个引用
构造方法
构造方法:
* 1. 创建对象 new + 构造方法
* 2 初始化成员变量(给成员变量赋值)
无参构造方法
public Student(){
有参构造方法
public Student(String name, int score) {
this.name = name;
this.score = score;
方法重载
方法重载:
1. 同一个类中
2. 方法名相同
3. 参数列表不同(参数个数不一样,参数的类型不一样)
4. 与修饰符和返回值无关
注意事项: 构造方法也可以重载
列如
public void say(){
System.out.println(“hello”);
}
public String say(int a){ return "hello"; }
public String say(String name){ return "hello "+name; } }
this关键字
1、调用属性
this.health = 100; this.name = “大黄”;
2、调用方法
this.print();
3、调用构造方法
调用无参构造方法
this();
调用有参构造方法
this(“小黑”,100,100,“雄”);
成员变量和局部变量
成员变量:不在方法里的变量就是成员变量
局部变量:在方法里面的变量就是局部变量(包含参数上的变量)
成员变量和局部变量的区别:
* 1 成员变量定义在类中,整个类中都可以访问
* 2 局部变量定义在方法中,只能在方法中使用
* 3 成员变量可以不给初始值,因为有默认值,局部变量必须有初始值否则报错(除了参数)
* 4 如果成员变量和局部变量名字一样:成员变量前面可以加this,this代表当前对象
* 5 我们在方法里面使用变量的时候,如果方法里面有,就用自己的,如果没有就用成员变量