一、方法
1.何为方法?
语法:
System.out.println() //类.对象.方法
- 方法用于完成某些事情
- 方法是解决一类问题的步骤有序组合
- 方法包含于类或者对象中
- 方法在程序中被创建,在其他地方被引用
- 设计方法的原则:一个方法只能做一个事情
2.定义
1.方法包含一个方法头和方法体
- 修饰符
- 返回类型
- 方法名
- 参数类型
- 形式参数 :用来定义作用的参数
- 实际参数:实际传递的参数
- 方法体
- 修饰符 返回类型 方法名(参数类型 参数名){
······
方法体
·····
return 返回值;
}
3.方法的调用
1.调用方法 的语法: 对象名.方法名(实际列表)
2. 传递方式:
值传递:传递值
引用传递 :传递的是对象的地址,(java是值传递)
3.关键字 this
二、 重载
- 一个类中定义了多个同名的方法,如果方法名相同,方法参数不同,包括参数的类型和个数都不同,叫做方法的重载。
1. 规则
1.方法名相同
2.参数列表不同(不同的地方包括:参数的个数、类型、序列)
2.实现理论
方法名称相同,编译器就会根据调用方法的参数个数、参数类型等相关区别 逐个匹配,直到选择对应的方法。
如果没有匹配到合适的方法,编译器就会报错。
三、命令行传参
- 运行一个程序时 在传递给他消息,这个传递命令行参数的main()函数来实现
- 字面意思·····
例如:
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("args[" + i+"]:"+args[i]);
}
}
四、可变参数
- 起因:在日常写程序中,我们不知道日后使用使用的时候会调用多少个参数,因此产生了***“可变参数”***
- 语法: 在定义数据类型的时候加入3个 点 表示可能会调用若干参数
public start void name(int ··· i)
- 例子:
public static void main(String[] args) {
printMax(21,324,56,23,34,234,213);
printMax(new double[]{213,4,5,67,});
}
public static void printMax (double ...i){ //一个比较数组中最大值的 方法
if (i.length == 0){
System.out.println("没得参数");
return;
}
double result = i[0];
for (int a=1;a<i.length;a++){
if (i[a]>result){
result = i[a];
}
}
System.out.println("最大值为:"+result);
}
五、递归
- 一种思维\编程技巧,方法自己调用自己来去执行某些功能
- 写递归程序的时候需要考虑终止递归的条件
那么就需要先定义结束出口
例子:
public static void main(String[] args) {
System.out.println(f(10));
}
public static double f(double n){
if(n==1){
return 1;
}else {
return n*f(n-1);
}
}
自学内容,来源“kuangstudy.com”