Java 中的方法

当你开始用 Java 编程时,你应该知道有许多新概念需要学习:类、方法、异常、构造函数、变量等等,它可能会变得不堪重负。所以,最好慢慢学习。在本文中,我们将:学习方法以及如何在 Java.

中调用方法 Java 方法等价于 C 语言中的函数,它包含单个块中的一组操作,其目的是优化和减少代码。该方法可以从其他方法调用,当它被调用时,该方法中的所有方法也将被调用并执行。例如,当您调用 System.out.println(),系统执行多项操作只是为了在控制台中显示一条消息。

现在,您将学习如何创建自己的方法(带或不带返回),调用带或不带参数的方法,以及优化方法中代码的抽象。

创建方法

让我们考虑以下示例来了解method:

public static int methodname(int a, int b) {
// method body
int sum = a + b;
返回总和;
}
- 关键字 public 表示方法本身可以 待办事项 只要导入调用类,就可以从任何块、不同的类甚至不同的包调用。还有其他三个关键字可以替换 public。这些是 protected私有。如果方法是 protected,只有这样,这个类和从它继承的下级类才能调用该方法。如果方法是 private,则该方法可以 待办事项 只在教室里打电话。

- 第二个关键字 static表示该方法属于类和类(对象)的实例。static 应该使用类名来调用:ExampleClass.ExampleMethod()。但是,如果关键字 static不存在,因此只能通过对象调用该方法。如果类具有构造函数(用于创建对象),则可以通过键入 ExampleObject obj = 新建  例子对象(); ,并使用 obj。例子方法();.

- int 是函数的返回类型,在这种情况下,该方法被声明为在执行处理后返回整数结果的函数。返回结果的关键字是 return.

- int a, int b 是将在方法中使用的参数列表,例如,我们想要执行一个添加 a 和 b 的操作,并将结果放入一个 sum 变量中,该变量将作为语句的输出返回 返回总和;.

示例:
这是一个代码,用于比较两个数字并得出最大值。该函数采用两个参数 nb1 和 nb2,并返回两者的最大值:

public static int max(int a, int b) {
int max;
if(a>b)
max=a;
else
max=b;
返回最大值;
}

void 关键字

单词 void 指示调用该方法时该方法不返回任何内容。如果你想要一个方法返回一些东西,那么替换单词 void 由要返回的对象的数据类型。然后添加单词 return 加上 object.

在此示例中,我们考虑一个采用 int n 作为参数,并打印 1n。此方法的类型为 void 并且不返回值。

public class main {
public static void main(String[] args) {
print(5);
}

public static void print(int n){
for(int i = 0; i < n; i++)
System.out.println(i);
}
}
运行时:

0
1
2
3
4
请注意,System.out.println() 不返回任何内容,因为它的类型为 void.

如何调用方法

若要使用方法,需要调用它。有两种方法可以调用方法。处理方法调用很简单。当程序调用方法时,控制 是 转移到调用的方法。方法完成后,控件将返回给调用方,其中包含两个条件:

1- 语句 return 被执行 (function).
2- 我们到达右括号而不返回任何内容 (procedure).

您可以使用函数返回的内容,如本示例所示:

public class main {
public static void main(String[] args) {
int a, b;
a = 5;
b = 10;
int 结果 = sum(a, b);
System.out.println(a+b = ”+result);
}

public static int sum(int a, int b){
return a+b;
}
}
运行时:

a+b = 15

按值传递参数

传递的参数必须与方法中声明的参数的顺序完全匹配。参数可以按值传递,也可以按引用传递。

按值传递参数意味着使用参数调用方法。以下程序显示了如何按值传递的示例。调用方法后,参数的值保持不变.

public class main {
public static void main(String[] args) {
int a = 30;
int b = 45;

System.out.println(在交换(main)之前,a = ” + a
+ b = ” + b);

//调用 permute()
permute(a, b) 方法;
System.out.println(交换(main)后,a = ” + a
+ b = ” + b);
}

public static void permuter(int a, int b) {

System.out.println(在排列(方法)之前),a = ” + a
+ b = ” + b);
// 将 a 换成 b
int c = a;
a = b;
b = c;

System.out.println(交换(方法)后,a = ” + a
+ b = ” + b);
}
}
运行时:

交换(main)之前,a = 30 b = 45
交换(方法)之前,a = 30 b = 45
交换(方法)之后,a = 45 b = 30
交换(手)之后, a = 30 b = 45

方法重载 java

当一个类包含两个或多个同名但参数不同的方法时,这称为方法重载。它与重写方法具有相同的名称、类型、参数数等不同。

让我们考虑前面看到的示例,该示例确定两个整数之间的最大值。假设我们要确定双精度类型的最大数量。重载的概念将帮助我们创建两个或多个同名但参数不同的方法.

public class main {
public static void main(String[] args) {
int a, b;
a = 7;
b = 8;
System.out.println(最大(”+a+, ”+ b+) = ”+max(a, b));

双 x,y;
x=1.5;
y=4.2;
System.out.println(max(”+x+, ”+ y+) = ”+max(x, y));
}

public static int max(int a, int b) {
int max;
if(a>b)
max=a;
else
max=b;
返回最大值;
}

public static double max(double a, double b) {
double max;
if(a>b)
max=a;
else
max=b;
返回最大值;
}
}
运行时:

max(7, 8) = 8
max(1.5, 4.2) = 4.2
方法重载使程序具有适应性。在这里,这两种方法具有相同的名称,但参数不同。整数和双精度类型的最大数量为 result.