一、方法
-
分类
按照有无参数:有参方法 无参方法
按照有无返回值
无返回值的方法 有返回值的方法
结合分类
无参数的无参方法 无参数的有参方法 有参数的无参方法 有参数的有参方法
-
成员方法的返回值
若方法有返回值,则在方法体中用 return 语句指明要返回的值,其格式如下所示。
return 表达式;
或者
return (表达式);
其中,表达式可以是常量、变量、对象等。表达式的数据类型必须与声明成员方法时给出的返回值类型一致。
3. 形参、实参及成员方法的调用
一般来说,可以通过以下方式来调用成员方法:
methodName({paramList})
关于方法的参数,经常会提到形参与实参,形参是定义方法时参数列表中出现的参数,实参是调用方法时为方法传递的参数。
public int returnMin(int m,int n) {
// m和n是形参
return Math.min(m,n);
}
public static void main(String[] args) {
int x = 50;
int y = 100;
Test t = new Test();
// x和y是实参
int i = t.returnMin(x,y);
System.out.println(i);
}
方法主体是方法中执行功能操作的语句。其他各修饰符的含义如下。
public、private、protected:表示成员方法的访问权限。
static:表示限定该成员方法为静态方法。
final:表示限定该成员方法不能被重写或重载。
abstract:表示限定该成员方法为抽象方法。抽象方法不提供具体的实现,并且所属类型必须为抽象类
每创建一个类,系统会自动给这个类添加一个无参构造方法,并且是隐藏的
* 构造方法是用来创建对象的
* 构造方法的名称与类名相同
* 构造方法没有返回值,void也不写
* 当在类中自定义了其它有参构造方法后,默认的无参构造方法会被覆盖,如果还需要使用无参构造方法,就需要手动添加一个无参构造方法
二、方法重载
- 定义:在同一个类中,多个方法的方法名相同,参数列表不同,这个现象就是方法重载,与方法的返回值和访问权限修饰符无关
- 特点:
同一个类
方法名相同
参数列表不同:参数的个数,参数的类型,参数的顺序
与方法的返回值和访问权限修饰符无关
sum(int a,int b)
sum(int a,int b,int c)
sum(double a,double b)
sum(int a ,double b)
sum(double a,int b)
-
调用
通过对象调用重载的方法时,系统的代码智能提示会给出返回类型和参数的信息,使用“↑”和“↓”键或者单击,都可以选择要使用的方法。
通过对象直接调用并传递参数,系统会根据参数类型自动匹配相应的方法。 -
优点
方法重载是对原有方法的一种升级,可以根据参数的不同,采用不同的实现方法,而且不需要编写多个名称,简化了类调用方法的代码
public class Student {
String name;
int age;
char gender;
double height;
double weight;
String phoneNumber;
String address;
String hobby;
String country;
String job;
String email;
public Student(int age, double height, double weight, String hobby) {
this.age = age;
this.height = height;
this.weight = weight;
this.hobby = hobby;
}
public Student(String name, int age, char gender, double height) {
this.name = name;
this.age = age;
this.gender = gender;
this.height = height;
}
public Student(String name) {
this.name = name;
}
}