方法基础学习

目录

  • 方法的定义
    • 有参构造
    • 无参构造
  • 方法的重载
  • 方法的使用
    • 简介:
    • 命令行传参
    • 可变传参(参照[菜鸟](https://www.runoob.com/java/java-methods.html))
  • 递归使用

方法的定义

方法的定义大致分为两种,即有参构造无参构造

有参构造

有参构造的使用 需要构建方法时出现返回值,定义使用的定义方法类型,例如:

public static String oneFunction(int i){
  String onReturn = null;
  if(i>0){	
		onReturn = i.tostring();
		 System.out.println("这是一个有参构造方法!!");
	}
	return onReturn;
}

此类方法使用的就是有参构造,创建一个返回值为String类型的 oneFunction 方法,传递参数为int型,这样的方法结构就是有参构造。

无参构造

无参构造是不会使用返回值的方法,在构建无参构造方法的时候,会使用void关键字;

public void twoFunction(){
 System.out.println("这是一个无参构造方法!!");
}

方法的重载

我们使用一个方法名设置不同的方法入参,可以实现方法的重载;
代码如下:

/*Ⅰ*/
public Sting stringFunction(int i){
	return "Ⅰ";
}
/*Ⅱ*/
public Sting stringFunction(int i,int j){
	return "Ⅱ";
}
/*Ⅲ*/
public Sting stringFunction(double i){
	return "Ⅲ";
}
/*Ⅳ*/
public Sting stringFunction(double i,double j){
	return "Ⅳ";
}

如上方法所描述:当传入一个int型参数的时候会返回Ⅰ;如果是两个int型变量参数的时候,就会返回Ⅱ;…以此类推,调用方法的时候都会使用同一个方法名stringFunction,但是会根据方法入参的不同会调用不同的方法体,这就是方法的重载

解释:

一个类的两个方法拥有相同的名字,但是有不同的参数列表。
Java编译器根据方法签名判断哪个方法应该被调用。
方法重载可以让程序更清晰易读。执行密切相关任务的方法应该使用相同的名字。
重载的方法必须拥有不同的参数列表。你不能仅仅依据修饰符或者返回类型的不同来重载方法。

方法的使用

简介:

System.out.println(); 是我们经常使用的打印方法:
println() 是一个方法。
System 是系统类。
out 是标准输出对象。
这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 println()。

我们平时使用的时候就是这样的方法构造,如果使用参数传输的话就将参数作为入参传进去;使用方法处理后的返回值。

命令行传参

可变传参(参照菜鸟)

TestVoidMethod.java 文件代码:

public static void nPrintln(String message, int n) {
  for (int i = 0; i < n; i++) {
    System.out.println(message);
  }
}

TestPassByValue.java 文件代码:

public class TestPassByValue {
  public static void main(String[] args) {
    int num1 = 1;
    int num2 = 2;
 
    System.out.println("交换前 num1 的值为:" +
                        num1 + " ,num2 的值为:" + num2);
 
    // 调用swap方法
    swap(num1, num2);
    System.out.println("交换后 num1 的值为:" +
                       num1 + " ,num2 的值为:" + num2);
  }

  /** 交换两个变量的方法 */
  public static void swap(int n1, int n2) {
    System.out.println("\t进入 swap 方法");
    System.out.println("\t\t交换前 n1 的值为:" + n1
                         + ",n2 的值:" + n2);
    // 交换 n1 与 n2的值
    int temp = n1;
    n1 = n2;
    n2 = temp;
 
    System.out.println("\t\t交换后 n1 的值为 " + n1
                         + ",n2 的值:" + n2);
  }
}

交换前 num1 的值为:1 ,num2 的值为:2
进入 swap 方法
交换前 n1 的值为:1,n2 的值:2
交换后 n1 的值为 2,n2 的值:1 交换后 num1 的值为:1 ,num2 的值为:2

递归使用

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