1.方法
将需要的某个功能包装起来,简化逻辑
main(String[] args)
{
add(2);
}
public static int add(int b){
return a;
}
public static修饰符;
int返回值类型,无返回值则写void;
add方法名称,调用时候add(2)括号内参数int;
reture 返回值必须和声明的返回值类型一致,若无返回值return可写可不写
2.注意
书写位置不能写在另一个方法内,调用可以用在另一个方法内
编译期间和内存无关,编译后class文件进入内存的方法区,main方法压栈运行(在方法栈内)
方法运行完成出栈(弹栈)释放内存资源(此时方法内保存的基本数据类型一并销毁)
方法注意重名问题
方法无顺序,一般main方法放在最前
3.方法重载
- 方法名称相同,参数类型不同则视为两个方法
- 注意仅与方法名和参数类型(包含参数类型顺序)有关
- print就是方法重载实例
4.参数传递
main(String【】 args){
int a=1;
int b=2;
change(a,b);
sop(简写输出语句)(a+“和”+b);
}
public static void change(int a,int b)
{
a=a+b;
b=b+a;
}
输出依然a=1;b=2;
原因:在change运行时候原来a,b并未参与(change单独在方法栈中开辟一小块),
而change方法运行完成之后change方法块中的a(3),b(5)也随之释放,
原来a,b与change中的a,b无关
但是int换成array则不一般
main(String【】 args){
int[] arr={1,2};
change(arr);
sop(简写输出语句)(arr[0]+“和”+arr[1]);
}
public static void change(int [] arr)
{
arr[0]=100;
arr[1]=200;
}
输出是100和200
原因:arr传递是arr地址,在change方法中操作的是main方法中的arr
while(ture)
{
switch (chose)
{
case 1:
break;
case 2:
break;
case 3:
return;
}
}
break打断switch但不会结束while
return结束while循环