public class MethodTest01{ public static void main(String[] args){ // 需求1:编写程序计算 10 和 20 的和,并输出结果 int a = 10; int b = 20; int c = a + b; System.out.println(a + "+" + b + "=" + c); // 需求2:666 和 888 的和,并输出结果 int a = 666; int b = 888; int c = a + b; System.out.println(a + "+" + b + "=" + c); /* 以上需求代码相似实质是以一个需求,功能相同 只不过每次参与的数据不同 * 在 Java中应当有一种机制: - 某种功能的代码只需要使用一次 - 功能间的交互,只需要传入具体数据,即可得到结果 这样的代码就可以重复利用,提高代码复用性 使用这种方法我们称为【调用/invoke】 */ // 【调用/invoke】 sumInt方法 MethodTest.sumInt(10, 20); MethodTest.sumInt(666, 888); // 效果与前面代码相同 } // 单独定义一个方法【暂时不解释方法语法】 // 作用:完成计算两个int类型数据的和,并输出结果 public static void sumInt(int a, int b){ int c = a + b; System.out.println(a + "+" + b + "=" + c); } }
方法的英文单词:Method
方法在 C语言 中叫做【函数/Function】
Java方法:是语句的集合,它们在一起执行一个功能
中括号的内容为可选
[修饰符列表] 返回值类型 方法名(参数列表){ 方法体 [return 返回值;] }
[return 返回值;]
如果没有,返回值类型为void
只要是数据就有数据类型,所以
返回值
与返回值类型
必须一致
语法结构解释:
修饰符列表
可选,不是必要
告诉编译器如何调用该方法,定义了该方法的访问类型
目前统一写为:public static
【以后讲解】
修饰符列表有 static
关键字调用格式:类名.方法名(实参列表);
实参列表:你根据实际想要传让的数据
返回值类型
一个方法是可以完成某一个特定功能的,这个功能结束之后大多数都需要返回最终执行的结果
返回值类型程序员需要根据实际方法制定
方法可能会没有返回值,此时的返回值类型是 void
同时不可以有 返回值
,但可以编写 return ;
方法名
满足标识符要求即可,最好见名知意
方法名使用小驼峰命名法,首个词最好是动词
参数列表:内包含形参
形参是局部变量:int a; double b; float c; String args; ...
形参数量:0 ~ N
多个形参之间使用 ;
分隔
形参中起决定性作用的是形参的数据类型,形参的名字只是局部变量的名字
方法【调用/invoke】时,实际给方法传递的真实数据,被称作【实参】
形参列表与实参列表需要数据类型对应,数量对应
方法体
方法体必须由大括号括起来
方法体包含具体的Java语句,语句有逻辑顺序【自上而下】
只要带有 return
关键字的语句执行,则 return
所在的方法强制结束
假设:你想象你要办一个工厂
// public 表示公开的 // class 表示定义类 // MethodTest02 一个类名 public class MethodTest02{ // 这里 类体 // 类体中不能直接编写Java语句,除说明变量 // 下面是一个方法 // public 表示公开的 // static 表示静态的 // void 表示方法执行结束后没有数据返回 // main 一个特殊的方法名【主方法】 // (String[] args) :形式参数列表,其中String[]是一种数据类型【字符串】,args是一个局部变量的变量名 // 主方法的编写是固定的,因为这是 SUN公司 所规定的,表示程序的入口 public static void main(String[] args){ // 这里 方法体 int num; // 调用方法sumInt()的计算10 和 20求和并输出结果,返回求和 num = MethodTest02.sumInt(10, 20); // (10, 20) 是实参列表 System.out.println("从方法中返回的和: " + num); // 再次调用 num = MethodTest02.sumInt(num, 10); // (num, 10) 是实参列表 } // 下面是一个自定义的方法 // 方法作用:计算两个int数据的和,输出计算结果并返回和 // 写一个方法之前需要进行规划 // 修饰符类型:public static // 方法名:sum 求和的意思 // 形式参数列表:(int a, int b) 要求是两个int数据 // 返回值类型:int 返回值是两个int数据的和,计算后的和仍旧是int // 方法体:主要是求和,输出计算结果并返回和 public static int sumInt(int a, int b){ // (int a, int b) 是形参列表 int c = a + b; System.out.println("调用方法sumInt的输出: " + c); return c; } }