方法的定义和引用
1.方法的定义和调用
举例,写一个求和的方法,并在main函数里调用它
public class methodDemo {
public static void main(String[] args) {
int a=1;
int b=2;
int c=sum(a,b);
System.out.println(c);
}
private static int sum(int a, int b){
return a+b;
}
}
方法没有返回值时,写void,调用时直接调用即可
范例:
public class method2 {
public static void main(String[] args) {
hello();
}
private static void hello(){
System.out.println("hello");
}
}
控制台直接输出如下:
2. 方法重载
在同一个类中,方法名相同,但是参数列表不同。
参数列表不同指的是:
1)参数的个数不同
2)参数的数据类型不同
注意:返回的结果数据类型不同
3.形参和实参
基本数据类型作为参数传递,形式参数的改变不影响实际参数。
引用数据类型作为参数传递,形式参数的改变直接影响实际参数。
public class ArgsDemo {
public static void main(String[] args) {
int a=10;
change(a);
System.out.println("a:"+a);
int[] arr= {1,2,3};
System.out.println("-----------------");
change2(arr);
for (int i=0;i<arr.length;i++){
System.out.println("arr:"+arr[i]);
}
}
public static void change(int a ){
a=a+10;
}
public static void change2(int[] arr){
arr[0]=arr[0]+10;
}
}
结果返回如下:
可以看出int 类型的a参数在change方法中被改变后,main中的a并未改变。
但是,main中的【引用类型】数组arr,在change方法中被改变后,main中的arr的值也发生了改变。
由于arr是数组类型,形参和实参引用的是同一个内存空间,因此,一个改变时,另外一个也发生了变化。