Java的方法,是一个功能
方法:
1:模块化
2:重复使用
3:更好理解
4:直接调用现有方法开发,不必重复造轮子
其实从一开始学习main就是方法,如果按照顺序来学习,学习到目前为止(学完操作符开始学方法),在JAVA中写方法,目前为止最好加上 public static ,因为main就是static静态的
必须调用静态的方法,后续的类会讲到不写也行
方法名 要采用小驼峰的形式,此处跟C语言中略有不同,
在C语言中,求最大值 函数名 GetMax,
在Java中,getMax;
说完方法的命名规则,还要谈一谈 方法的返回值:
方法的返回值是可有可无的,具体看业务需求,如果有返回值,那么返回值的类型需要和方法的返回值类型匹配
形式参数列表:简称形参
形参是->实参的一份拷贝。相当于做游戏,一个人main(可以是主方法,main,也可以是非主方法)给另一个人metho倒一杯水,那么倒的这杯水,就需要一个容器来承装他。
如
public static getMax(int [] nums)
{
int max=0;
return max;
}
其中的 int[] nums 叫做形参
形参是实参的一份拷贝
方法体 就是 具体方法的实现。
return num1>num2 ? num1 : num2;
//这个小tips不好记,其实理解起来就是
//是否 num1>num2为真?
//如果为真,这句话的值就为冒号之前的num1
//如果为假,这句话的值就为冒号之后的num2
方法的调用包括程序的执行,先走到你的main函数
return代表函数的结束,他下面的代码,将不会被执行
例如
2021/10/21力扣每日一题,编程时一个小细节,用到了终止循环 ,
下面的break就无法到达,只要满足条件,他自己就停了。
package the.test;
public class NeedReview
{
public static void main(String[] args)
{
int a=10;
int b=20;
System.out.println(getMax(a,b));//此处的a,b为实参;
}
public static int getMax(int a,int b)//此处的a,b是形参
{
int max=a>b?a:b;
return max;
}
}
JAVA中 只有按值传递
就算后面传的是引用,也只传值
此处补充foreach
for(元素类型type 元素变量value :遍历对象 obj)
{
引用x的java语句;
}
public static int[] foreach(int[] nums)
{
int len=nums.length;
for(int i:nums)
{
System.out.println(nums[i]);
}
}
java中foreach,可以认为是增强版的for语句循环,它可以减少代码量,但是不是所有的foreach都可以代替for循环。
所有的项目 在完成的时候,一定要写成单独的方法
功能,会封装到类 或者方法
C语言中需要声明 非main方法和main方法的顺序
在JAVA中不在意顺序,直接从main进。
Java的重载
面试问题:Java重载和重写的区别:
重写后面会讲
此处补充重载
public int getMax(int a,int b)
{
int max=a>b?a:b;
return max;
}
public double getMax(double a,double b)
{
double max=a>b?a:b;
return max;
}
public int getMax(int a,int b,int c)
{
int max1=a>b?a:b;
int max=max1>c?max1:c;
return max;
}
重载(overload)的四个要求
0:重载的方法必须在同一个类中
1:重载的方法名字必须相同
2:重载的参数个数,或者参数列表,必须不同
即 下述三种情况 必须发生一种 :2.1 参数个数不同
2.2 参数类型不同
2.3 参数类型和参数个数都不同
任意种发生即可
3:返回值类型不做要求