Java方法

时间:2020-02-23 14:36:42  来源:igfitidea点击:

Java是一种面向对象的编程语言。
Java方法在类中定义,它们是其编程的基础。

Java方法

Java方法是语句的集合,用于处理某些特定任务并将响应返回给调用方。
方法使我们可以编写可重用的代码,并将程序划分为几个小的工作单元。
Java Method提倡干净且易读的代码。

Java方法组件

让我们看一下java方法的各个组成部分。

  • 访问修饰符:Java方法访问修饰符定义谁可以调用该方法。
    用于限制方法的范围。
    Java中有四个访问修饰符-私有,受保护,公共和默认。
    除了访问修饰符外,我们还可以将方法指定为静态方法,在这种情况下,我们无需创建对象即可调用该方法。
    我们可以通过类直接调用静态方法。
    静态方法对于创建实用程序方法很有用。

  • 返回类型:Java方法必须指定返回类型。
    它们可以是任何原始类型或者对象。
    如果该方法未返回任何内容,则必须使用void作为返回类型。

  • 方法名称:Java中的每个方法都必须有一个名称。
    用于识别方法。
    我们应该为我们的方法提供描述性名称,以便对方法执行的任务有所了解。
    如果您编写了任何Java程序,我相信您会看过java main方法。

  • 方法参数:我们可以将参数传递给方法,这些参数在方法名称后的括号中定义。
    通常,方法语句使用这些参数来完成其任务。

  • 异常列表:有时,java方法可以引发异常。
    我们可以使用throws关键字定义它们。
    如果有多个异常可以抛出,那么我们可以使用逗号将它们分开。

  • 方法主体:这是所有方法操作发生的地方。
    方法主体包含要由该方法执行的语句,它们位于大括号内。

下图显示了java main方法的不同组件。

Java方法签名

Java方法签名由声明名称的名称和参数类型组成。
在一个类中,可以有多个方法,但是每个方法应具有不同的签名,否则将无法编译。
JRE使用Java方法签名来标识在程序中调用时要调用的确切方法。

public void print(String s) {}
private static int print(String s) {}

如果我们在一个类中有上述方法,则不会编译,因为这两个方法都具有相同的签名。

public void print(String s, int i) {}
private static void print(int i, String s) {}

由于参数顺序不同,因此上述方法不同。

调用Java方法

让我们看一个示例,在该示例中,我们将创建一个main方法并调用其他方法。

package com.theitroad.util;

public class MathUtils {

	public int add (int x, int y) {
		return x + y;
	}
	
	public static void main(String args[]) throws Exception {
		MathUtils mu = new MathUtils();
		System.out.println(mu.add(5, 2));
		MathUtils.print("Static Method");
	}
	
	public static void print(String s) {}
	
}

当我们在上述程序中运行时,将执行java main方法,并将调用MathUtils方法。
注意,如果该方法不是静态的,则需要一个对象来调用它。
但是,如果该方法是静态的,那么我们可以简单地使用类名来调用它。

另外,请注意,在" System.out"对象中定义了" println()"方法。
这是一种标准的Java库方法,其中MathUtils类中的add()和print()方法称为用户定义方法。

Java方法示例

让我们看一些Java方法示例。

  • 重载方法:如果一个类有多个同名方法,则称为重载方法。

  • 方法抛出异常:让我们看一个将抛出异常的示例。

  • 递归方法:方法调用自身时,称为递归方法。
    我们在定义递归方法时应该非常小心,因为如果没有终止条件,它可能会进入无限的状态。
    让我们看一下一种使用递归返回数字的阶乘的方法。

  • 方法调用另一个方法:我们可以从一个方法调用另一个方法,让我们通过重用print(String s)方法来重新定义上述重载方法。

  • Java接口静态方法:从Java 8开始,Java接口可以具有静态方法。
    这是接口静态方法的一个小示例。

  • Java接口默认方法:从Java 8开始,接口可以具有默认方法实现。

在Java 8接口更改中了解更多信息。

  • Java Getter Setter方法:Java Getter Setter方法是访问和更新对象属性的常规方法。
    这些方法创建抽象,我们可以限制对不同属性的访问。
    大多数IDE支持轻松创建属性的getter-setter方法。

  • Java抽象方法:Java抽象类和接口可以声明没有主体的方法。
    扩展或者实现它们的类有责任提供方法定义。
    这些方法在抽象类中使用" abstract"关键字声明。
    Java接口方法是显式抽象的。