方法
语法:
访问修饰符 返回值类型 方法名(参数列表){
//方法体
}
- 访问修饰符:方法允许被访问的权限范围,public、private、protected
- 返回值类型: 如果不返回任何内容,则指定void;方法具有返回值,则需要指定返回值的类型、并在方法体中使用return语句返回值。
- 方法名: 定义的方法的名字,必须使用合法的标识符
- 参数列表: 传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开
方法是否带参和带返回值分为:
- 》无参无返回值方法
- 》无参带返回值方法
- 》带参无返回值方法
- 》 带参带返回值方法
无参无返回值方法:
- 定义方法
public void eat(){
System.out.println("无参无返回值的方法eat()");
}
- 调用方法(对象 . 方法名)
public class HelloWorld {
public static void main (String[ ] args) {
HelloWorld hello = new HelloWorld();
hello.sayHello();
}
public void sayHello(){
System.out.println("说了一句:helloworld。");
}
}
无参带返回值方法的使用
public class HelloWorld {
public static void main (String[ ] args) {
HelloWorld hello = new HelloWorld();
int nums = hello.sumNum();
System.out.println("数字之和:" + nums);
}
// 无参带返回值方法
public int sumNum(){
int a = 1;
int b = 2;
return a + b;
}
}
- 方法的返回类型为 void ,则方法中不能使用 return 返回值
- 方法的返回值最多只能有一个,不能返回多个值
- 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型值
带参无返回值方法的使用
public class hiSys{
public void say(String name) {
System.out.println("hi,"+ name);
}
public static void main (String[ ] args) {
HiSys hi = new HiSys();
hi.say("lisa"); // 调用时需传参
}
}
- 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应
- 调用方法时,实参不需要指定数据类型
- 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组
- 当方法参数有多个时,多个参数间以逗号分隔
带参带返回值方法的使用
public class HelloWorld{
public static void main (String[ ] args){
HelloWorld hello = new HelloWorld();
String welcome = hello.sayName("Ajen");
System.out.println(welcome);
}
public String sayName(String name){
return "晚上好,"+ name;
}
}
方法的重载
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载
// 无参无返回方法
public void detail(){
System.out.println("无参无返回");
}
// 方法的重载,一个参数
public void detail(String name){
System.out.println(name+"detail");
}
// 方法的重载,两个参数
public void detail(String name , Int age){
System.out.println("姓名:"+name+" 年龄:"+age);
}
// 重载方法不同参数顺序
public void detail(int age ,String name){
System.out.println("welcome"+name);
System.out.println("age"+ age);
}
-
当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行
-
判断方法重载的依据:
1、 必须是在同一个类中
2、 方法名相同
3、 方法参数的个数、顺序或类型不同
4、 与方法的修饰符或返回值没有关系
网友评论