暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

方法的概念和功能

哈特费尔德的思考 2021-08-10
1385

1.概念

方法(英语单词:method)是可以完成某个特定功能的并且可以被重复利用的代码片段。
在C语言中,方法被称为“函数”。在java中不叫函数,叫做方法。
定义了一个/抽取了一个方法出来,而这个方法却无法完成某个功能,那么抽取的这个方法毫无意义。一般一个方法就是一个“功能单元”。

2.功能
假设在以后的开发中,某个功能是可以独立抽取出来的,建议定义为方法,这样以后只要需要这个功能,那么直接调用这个方法即可,而不需要重复编写业务逻辑代码。
对于一个java程序来说,如果没有“方法”,代码无法得到复用。(可以定义方法,然后需要使用该功能的时候,直接调用一下方法即可。这样代码就得到复用了。)
/*
对于一个java程序来说,如果没有“方法”,会存在什么问题?
代码无法得到复用。(怎么提高复用性,可以定义方法,然后需要
使用该功能的时候,直接调用一下方法即可。这样代码就得到复用了。)
*/
public class MethodTest01{
// 入口主方法。
public static void main(String[] args){


// 需求1:请编写程序,计算100和200的求和。
int x = 100;
int y = 200;
int z = x + y;
System.out.println(x + "+" + y + "=" + z);


// 需求2:请编写程序,计算666和888的求和。
// 这个需求2实际上和需求1是完全相同的,只不过具体求和时的“数据不同”
int a = 666;
int b = 888;
int c = a + b;
System.out.println(a + "+" + b + "=" + c);


// 需求3:请编写程序,计算111和222的和
int m = 111;
int n = 222;
int k = m + n;
System.out.println(m + "+" + n + "=" + k);


/*
需求1、需求2和需求3本质上相同,只不过参与运算的数值不同,
代码编写了三份,显然代码没有得到重复利用,专业术语
叫做“复用性”差。


功能/业务逻辑既然相同,为什么要重复编写代码,代码能不能
写一次,以后要是需要再次使用该“业务/需求”的时候,直接调用
就可以了。


如果想达到代码复用,那么需要学习java语言中的方法机制。
*/


}


}
/*
这个程序是一个体验程序,你看不懂,你只需要去体验就行了。
体验一下方法的好处。


注意:
程序开始执行的时候是先执行main方法。
因为main方法是一个入口。


在java语言中所有的方法体中的代码都必须遵循自上而下的顺序依次逐行执行。
这个必须记住。


main方法不需要程序员手动调用,是由JVM调用的。
但是除了main方法之外其他的方法,都需要程序员
手动调用,方法只有调用的时候才会执行,方法不调用
是不会执行的。
*/
public class MethodTest02{


// 方法定义在类体当中。
// 方法定义的先后顺序没有关系。都可以。
/*
public static void sumInt(int x, int y){ // 自上而下的顺序依次逐行执行。
int z = x + y;
System.out.println(x + "+" + y + "=" + z);
}
*/




// 主方法。入口。
public static void main(String[] args){ // 自上而下依次逐行执行。
// 需求1:请编写程序,计算100和200的求和。
sumInt(100, 200);
// 需求2:请编写程序,计算666和888的求和。
sumInt(666, 888);
// 需求3:请编写程序,计算111和222的和
sumInt(111, 222);
}


// 专门在这个类体当中定义一个方法,这个方法专门来完成求和。
// x y z在以下的sumInt方法中都属于局部变量
// 局部变量有一个特点:方法结束之后,局部变量占用的内存会自动释放。
public static void sumInt(int x, int y){ // 自上而下的顺序依次逐行执行。
int z = x + y;
System.out.println(x + "+" + y + "=" + z);
}


public static void sum(){
//System.out.println(x);
//System.out.println(y);
//错误: 找不到符号
//System.out.println(z);
}


}


// 这里并没有讲解方法的定义,以及方法的调用。
文章转载自哈特费尔德的思考,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论