java学习_方法

  1. 方法的概念以及定义方式
    1. java学习_方法_第1张图片
    2. 其他方式
      1. 如果没有返回值的话,返回值类型为void
      2. java学习_方法_第2张图片
      3. 常见问题
      4. java学习_方法_第3张图片
  2. 方法的执行原理
    1. java学习_方法_第4张图片
    2. 方法运行起来主要在栈内存中,且满足先进后出原则
  3. 方法的参数传递
    1. 普通类型的参数传递

java学习_方法_第5张图片

  1. 引用类型的参数传递

java学习_方法_第6张图片

 

cf4c2bdf24e44ce49191b398b67058bc.png 主函数中的参数会被修改。

  1. 方法重载
    1. 什么是方法重载?

在一个类中,方法名称相同,形参列表不同的几个方法就称为方法重载。

  1. 与修饰符无关
  2. 案例分析:
    1. java学习_方法_第7张图片

方法案例:

  1. 计算1~n的和

importjava.util.Scanner;

 

publicclassJavaDemoDay5MethodText1{

publicstaticvoidmain(String[]args){

intn;

System.out.println("请输入一个正整数");

Scannersc=newScanner(System.in);

n=sc.nextInt();

System.out.println(sumInt(n));

}

publicstaticintsumInt(intn){

if(n<=0)

{

System.out.println("输入错误!请重新输入");

return0;

}

intsum=0;

for(inti=1;i<=n;i++){

sum+=i;

}

returnsum;

}

}

  1. 判断一个数是否为奇数

importjava.util.Scanner;

 

publicclassJavaDemoDay5MethodText2{

publicstaticvoidmain(String[]args){

Scannersc=newScanner(System.in);

System.out.println("请您输入一个数:");

intn=sc.nextInt();

System.out.println(judgeInt(n));

}

publicstaticbooleanjudgeInt(inta){

if(a%2==0){

System.out.println("不是奇数");

returnfalse;

}

else{

System.out.println("是奇数");returntrue;

}

}

}

  1. 参数传递

publicclassJavaDemoDay5MethodText3{

publicstaticvoidmain(String[]args){

//演示参数传递

//1.普通类型的参数传递

inta=3;

text1(a);

System.out.println(a);

System.out.println("-------------------------");//这种传递方式实参不变

//2.引用类型的参数传递

int[]arr={10,20,30};

System.out.println(arr[2]);

text2(arr);

System.out.println(arr[2]);//这种传递方式传递的直接是地址,在方法中的修改会引起main方法中实参的改变

}

publicstaticvoidtext1(inta){

System.out.println(a);

a=5;

System.out.println(a);

}

publicstaticvoidtext2(int[]arr){

System.out.println(arr[2]);

arr[2]=888;

System.out.println(arr[2]);

}

}

  1. 方法重载

案例:开发武器系统

 

publicclassJavaDemoDay5MethodText4{

publicstaticvoidmain(String[]args){

//方法重载案例:开发武器系统

//1.向岛国发射一枚导弹

//2.向他国发射一枚导弹

//3.向他国发射多枚导弹

fire();

Stringtm="America";

fire(tm);

inthh=100;

fire(tm,hh);

}

//publicstaticvoidfire()

//{

//System.out.println("向岛国发射一枚导弹");

//}

//publicstaticvoidfire(Stringcounty)

//{

//System.out.println("向"+county+"发射一枚导弹");

//}

//publicstaticvoidfire(Stringcounty,intnum)

//{

//System.out.println("向"+county+"发射"+num+"枚导弹");

//}

//代码优化

publicstaticvoidfire()

{

fire("岛国");

}

publicstaticvoidfire(Stringcounty)

{

fire(county,1);

}

publicstaticvoidfire(Stringcounty,intnum)

{

System.out.println("向"+county+"发射"+num+"枚导弹");

}

}

 

 

你可能感兴趣的:(java,学习)