前言
Java中类有五个成员,分别是属性、构造器、方法、代码块、内部类。本篇文章我将从浅入深的给大家讲解方法的概念及其特点,希望对大家有所帮助。
1 举例一些方法
首先我先举例最常见的四种方法,他们分别是:
public class Person{
//无返回值,无形参
public void eat(){
}
//无返回值,有形参
public void sleep(String name){
}
//有返回值,无形参
public int wait(){
}
//有返回值,有形参
public String talk(int age){
}
}
2 方法的声明的格式
从上面所举例的四种常见方法我们可以的出方法的声明格式。
权限修饰符 返回值类型 方法名(形参列表){
方法体
}
3 对方法声明的说明
3.1 权限修饰符
方法前面可以添加Java规定的四种权限修饰符,这四种权限修饰符分别是
private public 缺省 protected
3.2 返回值类型
有返回值:
如果方法有返回值,则必须在方法声明时指定返回值类型,
同时方法中必须使用 return 关键字返回指定类型的数据
public String eat(){
return name;
}
无返回值:
如果方法没有返回值,则声明 void 来表示,通常没有返回值的方法中不需要使用 return
如果要使用的话,只能 return;
表示方法的结束,之后不能写语句
如果写了之后,就会编译错误 报错信息是:Unreachable statement
3.3 方法名
属于标识符,遵守标识符规范并且见名知意
3.4 形参列表
方法可以声明任意个形参。
下面是声明多个形参的格式
public void test(int age,String name){ //多个形参之间用,隔开
//方法体
}
3.5 方法体
就是方法功能的体现,咱们写方法只要就是写方法体
4 return关键字的使用
作用:①结束方法;
②针对于有返回值类型的方法,使用 retrun 数据;
方式返回所需要的数据
③return关键字后面的语句不能执行
5 方法的使用
可以调用当前类的属性和方法; 方法A中调用方法A就是递归方法
方法中不可以定义别的方法
继续深入方法
在了解了方法的声明格式后,我们学习一下方法的特性
1 方法的重载
1.1 重载的概念
重载就是在同一个类、多个方法之间方法名相同、形参列表不同的一组方法我们称之为方法的重载。
通过定义我们也可以得出怎航判断多个方法之间是否存在重载关系
① 在同一个类中;②方法名相同;③形参列表不同
形参列表不同可具体分为:参数个数不同、参数类型不同、参数顺序不同
下面这四个方法之间彼此构成重载:
public void test(int a){
}
public void test(String b){
}
public void test(int a,String b){
}
public void test(String b,int a){
}
2 可变个数的形参
就是你不确定你要往方法里面传入多少形参时,就可以使用可变形参,这个功能是JDK5.0新增
格式:数据类型… 变量名
public void test(String... strs){ 这就是可变形参,传入的参数个数可以是 0个 1个 。。。 多个
}
需要注意的是:可变个数形参必须声明在参数列表最后
可变形参最多只有一个
3 方法参数的值传递机制(重点)
3.1 形参实参的概念
形参:方法声明时小括号内的参数
实参:方法调用时实际传给形参的数据
3.2 值传递机制
Java中方法的参数传递方式只有一种:值传递
形参是基本数据类型:将实参基本数据类型的“数据值”传递给形参
形参数引用数据类型:将实参引用数据类型的“地址值”传递给形参