1.不用方法的缺点
以下程序不使用“方法”,分析程序存在哪些缺点?
* 以下的代码都是完成两个int类型的数据的和,相同的代码写了三遍(只不过每一次参与求和的数据不同) * 应该在java语言当中有这样的一种机制: - 某个功能代码只需要写一遍。 - 要使用这个功能,只需要给这个功能传递具体的数据 - 这个功能就可以重复利用了,提高代码复用性。【这就是“方法”】 * 输出使用这个方法我们成为“调用/invoke”
public class MethodTest01{
public static void main(String[] args){
//需求1:请编写程序计算10和20的和,并将结果输出【功能:计算两个int类型数据的和】
int a = 10;
int b = 20;
int c = a + b;
System.out.println(a + "+" + b + "=" + c);
//需求2:请编写程序计算666和888的和,并将结果输出【功能:计算两个int类型数据的和】
int x = 666;
int y = 888;
int s = x + y;
System.out.println(x + "+" + y + "=" + s);
//需求3:请编写程序计算111和222的和,并将结果输出【功能:计算两个int类型数据的和】
int m = 111;
int n = 222;
int i = a + b;
System.out.println(m + "+" + n + "=" + i);
//以上的三个需求其实就是一个需求
//这个需求是:计算两个int类型数据的和,功能相同
//只不过每一次参与计算的具体数据不同
}
}
2.用方法的优点
以下的代码使用方法这种机制【这个例子不讲方法的语法】,分析程序的优点? * 代码得到重复利用 方法的本质是什么? * 方法就是一段代码片段,并且这段代码片段 可以完成某个特定的功能,并且可以被重复的使用。 方法,对应的英语单词:Method 方法在c语言中叫做函数/Function 方法体当中不能在定义方法 方法定义在类体当中,在一个类当中可以定义多个方法,方法编写的位置没有先后顺序,可以随意。
public class MethodTest02{
//类体
public static void main(String[] args){
//计算两个int类型数据的和
MethodTest02.sumInt(10,20);//自上而下的顺序结构执行
MethodTest02.sumInt(666,888);
MethodTest02.sumInt(111,222);
int x = 80;
MethodTest02.sumInt(x,90);
int k = 40;
int f = 60;
MethodTest02.sumInt(k,f);//k和f是实参
}
//方法
//单独的定义一个方法
//该方法完成计算两个int类型数据的和,并且将结果输出
public static void sumInt(int a,int b){
int c = a + b;
System.out.println(a + "+" + b + "=" + c);
}
}
3.方法的介绍
1、方法怎么定义,语法机制是什么? [修饰符列表] 返回值类型 方法名(形式参数列表){ 方法体; } 注意: [] 符号叫做中括号,以上中括号[]里面的内容表示不是必须的,是可选的。 方法体由Java语句构成。 方法定义之后需要去调用,不调用是不会执行的。 1.1、关于修饰符列表: 修饰符列表不是必选项,是可选的。目前为止,大家统一写成:public static 后面你就理解应该怎么写了。 1.2、关于返回值类型: 第一:返回值类型可以是任何类型,只要是java中合法的数据类型就行,数据 类型包括基本数据类型和引用数据类型,也就是说返回值类型可以是:byte short int long float double boolean char String...... 第二:什么是返回值? 返回值一般指的是一个方法执行结束之后的结果。 结果通常是一个数据,所以被称为“值”,而且还叫 “返回值”。 方法就是为了完成某个特定的功能,方法结束之后 大部分情况下都是有一个结果的,而体现结果的一般 都是数据。数据得有类型。这就是返回值类型。 main{ // 调用a方法 a();..如果a方法执行结束之后有返回值,这个返回值返回给main了。 } a(){} 方法执行结束之后的返回值实际上是给调用者了。谁调用就返回给谁。 第三:当一个方法执行结束不返回任何值的时候,返回值 类型也不能空白,必须写上void关键字。所以void表示该 方法执行结束后不返回任何结果。 第四:如果返回值类型“不是void”,那么你在方法体执行结束的时候必须使用 "return 值;"这样的语句来完成“值”的返回,如果没有“return 值;”这样的语句 那么编译器会报错。 return 值; 这样的语句作用是什么?作用是“返回值”,返回方法的执行结果。 第五:只要有“return”关键字的语句执行,当前方法必然结束。 return只要执行,当前所在的方法结束,记住:不是整个程序结束。 第六:如果返回值类型是void,那么在方法体当中不能有“return 值;”这样的 语句。但是可以有“return;”语句。这个语句“return;”的作用就是用来终止当前 方法的。 第七:除了void之外,剩下的都必须有“return 值;”这样的语句。 1.3、方法名 方法名要见名知意。(驼峰命名方式) 方法名在标识符命名规范当中,要求首字母小写,后面每个单词首字母大写。 只要是合法的标识符就行。 1.4、形式参数列表 简称:形参 注意:形式参数列表中的每一个参数都是“局部变量”,方法结束之后内存释放。 形参的个数是:0~N个。 public static void sumInt(){} public static void sumInt(int x){} public static void sumInt(int x, int y){} public static void sum(int a, int b, double d, String s){} 形参有多个的话使用“逗号,”隔开。逗号是英文的。 形参的数据类型起决定性作用,形参对应的变量名是随意的。 1.5、方法体: 由Java语句构成。java语句以“;”结尾。 方法体当中编写的是业务逻辑代码,完成某个特定功能。 在方法体中的代码遵循自上而下的顺序依次逐行执行。 在方法体中处理业务逻辑代码的时候需要数据,数据来源就是这些形参。 2、方法定义之后怎么调用呢? 方法必须调用才能执行。 怎么调用,语法是什么? 类名.方法名(实际参数列表); 实参和形参的类型必须一一对应,另外个数也要一一对应。
public class MethodTest03{
public static void sum(int a,int b){
System.out.println(a + "+" + b + "=" + (a + b));
//调用dosome方法
MethodTest03.dosome();
}
//主方法
//main方法是JVM负责调用的,是一个入口位置
//从这里作为起点开始执行程序
//public表示公开的
//static表示静态的
//void表示方法执行结束之后不返回任何数据
//main是方法名:主方法
//(String[] args): 形式参数列表,其中String[]是一种引用数据类型,args是一个局部变量的变量名
public static void main(String[] args){//程序主入口,都是先从此处执行,然后再自上而下的结构执行
//调用sum方法
MethodTest03.sum(80,90);
System.out.println("HelloWorld!");
}
public static void dosome(){
System.out.println("do some");
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/94359.html