大家好,欢迎观看JAVA教程,本次教程我带大家深度了解方法的概念
-
学习方法的目的是什么?
描述:在实际应用中,很多程序都是会被重复使用的,但是你每次都写一遍,
你不累吗?这个时候就要用到方法了 -
方法是什么?用在哪里?
* 方法是什么? * 描述:方法是用于完成特定功能的一段代码,类似于其他语言的函数(function) * * 用在那里? * 描述:比如我之前在一个项目模块中写了一个指纹识别打卡系统, * 当你在写另外一个项目或多个项目时,刚好这些项目 * 都需要指纹识别打卡系统,如果没有方法你是不是要 * 重写,而且如果多个项目指纹识别打卡系统出了问题, * 你还要一个一个去修改,很麻烦也很浪费时间,那么 * 这个时候方法的作用就能很好的体现出来了。 * * 方法的特点: * 1.可以代码封装到放发里面,通过方法名可以调用 * 2.减少代码的书写量 * 3.可以被重复利用 * 4.维护和修改功能十分简单 * 5.可以设置访问权限
-
方法如何使用?
描述:我们这里以重复打印正方形为例
语法:
[修饰符1,修饰符2] 返回值数据类型 方法名(形参) {
//功能代码
}
* 方法的调用
* 对象名.方法名(传参);
* 方法的解释说明:
* 修饰符:用于控制用户的访问的权限
* 方法名:可以通过方法名来调用方法
* 形参:用于方法接受外界数据
* 实参:调用方法时,想方法内部传入数据
* 返回值:当方法里面的代码执行完毕后,返回给调用它的环境
* 返回值类型:约定返回输出的数据类型,如果没有返回必须指定void
注意事项:
* 实参的数目、顺序、类型必须和方法形式参数的参数列表一样
* return:方法执行完毕后并要求返回的数据
方法的使用案例:
import java.util.Scanner;
public class Test01{
//将正方形封装起来,以便以后调用
//注意:使用void是无法返回值的 return
//想要使用返回值,必须设置返回值类型,比如想要返回int类型,把void换成int
public static void add(int num) {
for (int i = 1;i<=num;i++) {
for (int j = 1;j<=num;j++) {
System.out.print("* ");
}
System.out.println();
}
}
//main主方法,程序执行的入口
public static void main(String[] args) {
//创建一个扫描仪
Scanner input = new Scanner(System.in);
//请输入打印正方形的次数
System.out.println("输入打印正方形的行数列数(打印次数)");
int x = input.nextInt();
//调用add方法并传参,然后将数据返回回来
add(x);
//关闭扫描仪
input.close();
}
}
方法重载的使用案例和介绍:
package Java第三章;
/**
* @author xiaoding
* 方法的重载
*/
public class TestOverLoad01 {
//方法名相同,参数个数不同,构成重载
public static int add(int n1,int n2,int n3) {
return n1 + n2 + n3;
}
//方法名相同,参数类型不同,构成重载
public static int add(int n1,double n2) {
return (int) ((int)n1 + n2);
}
//方法名相同,参数顺序不同,构成重载
public static int add(double n1,int n2) {
return (int) ((int)n1 + n2);
}
//方法名相同,返回值不同,无法构成重载
// public static int add(int a) {
// return a;
// }
// public static void add(int a) {
//
// }
//方法名相同,形参名不同
// public static int add(int num) {
// return num;
// }
// public static int add(int n) {
// return n;
// }
public static void main(String[] args) {
add(1,2,3);
add(3,5.2);
add(5.2,3);
}
}
-
深度思维(模拟设计者思维过程)
描述:在使用Java写程序是,难免会遇到重复的功能,如果一个一个写,容易出错
而且有浪费时间,有什么办法可以让这些代码不用重写可重复调用,而且方
便维护呢?
假设一下,我们设定一个容器,将功能代码放进去,设定规则,通过容器的
名称实现调用,修改时只需要找到那个容器,进行维护就行了,这个时候方
法就出来了。 -
广度思维(类比其他概念)
* 描述:方法有点像我们经常使用的循环语句,比如while、for、do-while, * 为什么这么讲? * 我们为什么要使用循环语句,因为如果我们要做一件事情,而且是重复的, * 那么过程肯定枯燥又心烦的。 * 比如:某个程序需要我们重复打印一句话,那么打印次数比较少,还好 * 如果打印次数多,打印上千次上万次,你可能一遍一遍的敲吗? * 即使你可以复制粘贴,那么也是一件很麻烦的事情,而循环是帮助我们 * 重复去做这件事情,有问题直接更改循环里面的语句,从而达到维护。 * 那么方法呢? * 描述:方法是用于完成特定功能的一段代码,类似其他语言的函数(function) * 那么方法和循环语句有什么共同的特点呢? * 1.减少代码的书写量 * 2.维护方便,易于理解 * 3. 方法和循环语句 * 方法是封装代码,让其调用完成特定的功能,可重复调用 * 循环语句是重复做一件事情 * 他们本质上还是有点相似的, * 比如我们重复打印一句话,我们可以使用循环,也可以使用方法进行 * 封装,调用并且打印,都是重复做一件事情,不过方法比循环更高级 * 一点,它们之前还是有区别的
-
广度思维(练习已知,底层原理的分析)
描述:方法相当于一个装水的容器,用的时候可以拿出来喝,不用的时候可以
把水进去保存。方法和循环调用的方法不一样,一个在main方法里面使
用,一个是在main方法外面使用,main里面的语句可以调用外面的方法,
而方法不可以调用main方法里面的语句,但是可以封装。 -
广度思维(类比生活中的例子)
- 比如我们写一篇文章,发布到网上去
- 可以设置专栏免费或者收费
- 我们通过搜索文章的名字可以找到它
- 文章可以被重复观看,也可以分享
- 需要修改时,只需要登录博客或者
你发布的平台修改即可,方便维护
-
广度思维(可视化辅助和分享)
-
不足
描述:都以后深入学习的时候在进行了解 -
创新(改进新组合)
描述:方法可以配合重载使用