方法与方法重载
带参数的方法
定义带参数的方法
<访问修饰符> 返回类型 <方法名>(<形式参数列表>){
//方法的主体
}
调用带参数的方法
对象名.方法名(参数1,参数2,...参数n);
方法传参
基本数据类型和引用数据类型数据在传参时区别
基本数据类型,操作传递的是变量的值,改变一个变量的值不会影响另一个变量的值。引用数据类型(类、数组、和接口),赋值是把原对象的**引用(可理解为内存地址)**传递给另一个引用
构造方法
语法
访问修饰符 构造方法名(){
//初始化代码
}
注意事项:
1、无返回值类型
2、方法名与类名相同
3、小括号内可以指定参数
作用:对象初始化(系统提供默认无参构造方法)
无参构造方法
Student s=new Student();//无参构造方法
每个类都有个默认无参构造方法
带参构造方法
public Student(String name, int num){
this.name=name;
this num=num;
}
调用的时候可以直接赋值
Student s=new Student("张三",40);
构造方法重载
构造方法重载(自定义构造方法)
注意事项:
1、方法名相同
2、参数不同
3、与返回值、访问修饰符无关
4、一旦使用了自定义构造方法,此时系统不再提供默认无参构造方法,如果需要用到,需重新构造。
public Student();
this的用法
调用属性
public Student(){
public Student(String name,int age){
this.name=name;
this.age=age;
}
}
带参数构造方法this关键字是对一个对象的默认引用,这里用于区分当前对象的属性名和形式参数名;
调用方法
this.print();
调用构造方法
public Student(String name, int age){
this.name=name;
this.age=age;
}
public Student(String name, int age, int score){
this(name,age);
this.score=score;
}
如果用this调用构造方法,必须是构造方法中的第一条语句。
方法重载
1、需要在同一个类中
2、方法名相同
3、参数个数或类型不同
4、与返回值,访问修饰符无关
成员变量和局部变量
什么是成员变量和局部变量
成员变量:在类体的变量部分中定义的变量,也称为字段。
局部变量: 也称内部变量,是指在一个方法中或复合语句内部定义的变量。
public class Student{
类型 变量1; //成员变量
类型 变量2;
类型 变量3;
public 返回值类型 方法1(){
类型 变量4; //局部变量
}
public 返回值类型 方法2(){
类型 变量5;
}
}
成员变量和局部变量的区别
作用域不同
1、局部变量的作用域仅限于定义它的方法
2、成员变量的作用域在整个类内部都是可见的
初始值不同
1、Java会给成员变量一个初始值
2、Java不会给局部变量赋予初始值
注意事项
1、在同一个方法中,不允许有同名局部变量。在不同方法中,可以有同名局部变量。
2、在同一个类中,成员变量和局部变量同名时,局部变量具有更高的优先级。