总结下方法
语法
访问修饰符+返回值类型+方法名(参数列表)
{
方法表
}
1、 访问修饰符:方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用
2、 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void ;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值
3、 方法名:定义的方法的名字,必须使用合法的标识符
4、 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开 。
可将方法分为四类: 1)无参无返回值方法 2)无参带返回值方法 3)带参无返回值方法 4)带参带返回值方法
注意:
1)方法体放在一对大括号中,实现特定的操作
2)方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式
** 2、调用方法**
当需要调用方法执行某个操作时,可以先创建类的对象(即new需要调用的方法所在的类),然后通过 对象名.方法名();
例如我们创建了一个名为 test 的对象,然后通过调用该对象的 show( ) 方法输出信息: public class HelloWorld { public void show() { System.out.println("Hello World"); } public static void main(String[] args){ HelloWorld test=new HelloWorld(); test.show(); } } 三、Java 中无参带返回值方法的使用1、例如:下面的代码,定义了一个方法名为 calcSum ,无参数,但返回值为 int 类型的方法,执行的操作为计算两数之和,并返回结果
在 calSum( ) 方法中,返回值类型为 int 类型,因此在方法体中必须使用 return 返回一个整数值。
2、调用带返回值的方法时需要注意,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。如:
注意:
1、 如果方法的返回类型为 void ,则方法中不能使用 return 返回值!
2、 方法的返回值最多只能有一个,不能返回多个值
3、 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型值
四、Java 中带参无返回值方法的使用
1、我们可以通过在方法中加入参数列表接收外部传入的数据信息,参数可以是任意的基本类型数据或引用类型数据。 我们先来看一个带参数,但没有返回值的方法:
上面的代码定义了一个 show 方法,带有一个参数 name ,实现输出欢迎消息。 2、调用带参方法与调用无参方法的语法类似,但在调用时必须传入实际的参数值
例如:
运行结果为: 欢迎您,爱慕课! 很多时候,我们把定义方法时的参数称为形参,目的是用来定义方法需要传入的参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。
注意:
1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应
2、 调用方法时,实参不需要指定数据类型,如3、 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组等
4、 当方法参数有多个时,多个参数间以逗号分隔五、Java 中带参带返回值方法的使用
如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法。
1、例如:下面的代码,定义了一个 show 方法,带有一个参数 name ,方法执行后返回一个 String 类型的结果
2、调用带参带返回值的方法:
运行结果为: 欢迎您,爱慕课! 六、Java中方法的重载
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。如下所示 4 个方法名称都为 show ,但方法的参数有所不同,因此都属于方法的重载:
问: 如何区分调用的是哪个重载方法呢? 答: 当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。如:
运行结果:
判断方法重载的依据: 1、 必须是在同一个类中 2、 方法名相同 3、 方法参数的个数、顺序或类型不同 4、 与方法的修饰符或返回值没有关系不定参数
不定参数有两个规定:第一,方法的参数列表中最多只有一个不定长度的参数;第二,就是不定长度的数组的位置必须是最后一个参数。不然不能通过编译。
eg public class world { public static void main(String[] args) { test(); test("aaa"); test("aaa", "bbb"); test("aaa", "bbb", "ccc"); } public static void test(String... args) { System.out.println(args.getClass()); for (String arg : args) { System.out.println(arg); } } }复制代码
输出
aaa
bbb
ccc
感觉还是不太懂呀
又查了查其他资料
在编写方法的过程中,可能会遇见一个方法有不确定参数个数的情况。一般我们会用方法重载来解决问题: 但是当参数多的时候就会显得很繁琐,同时每次扩展都会很麻烦。于是我们可以使用数组作为参数: But,这样还是有个准备参数的过程(还要构造一个数组,麻烦啊)。于是我们可以使用不定项参数(可变参数)的方式,这样做就可以解决参数个数不确定的问题。