Java 类方法
类方法是在类中声明的方法。它们执行特定的操作,并可以访问、修改类属性。
创建(声明)Java 类方法
类方法声明与用户定义方法声明类似,只不过类方法是在类中声明的。
通过指定访问修饰符来声明类方法。后跟 返回类型、方法名称和参数列表。
语法
使用以下语法进行声明Java 类方法:
public class class_name {
modifier returnType nameOfMethod(Parameter List) {
// 方法体
}
}
上面显示的语法包括 -
modifier- 访问修饰符,它定义了访问权限方法的类型,可以选择使用。
returnType - 返回类型,返回 类方法的数据类型。
nameOfMethod - 这是方法名称。方法签名由方法名称和参数列表组成。
Parameter List- 参数列表,它是类型、顺序和参数方法的参数数量。这些是可选的,方法可以包含零个参数。
方法主体 - 方法主体定义方法对语句执行的操作。
示例
这里是上面定义的方法minimum()的源代码。此方法采用两个参数 n1 和 n2 并返回两者之间的最小值 -
class Util {
/** 该方法返回两个数字之间的最小值 */
public int minimum(int n1, int n2) {
int min;
if (n1 > n2)
min = n2;
else
min = n1;
return min;
}
}
访问Java类方法
要访问类方法(公共类方法),您需要先创建一个对象,然后使用该对象( .) 运算符可以访问类方法。
语法
使用以下语法访问 Java 公共类方法:
object_name.method_name([parameters]);
示例
以下是该示例演示如何定义类方法以及如何访问它。在这里,我们创建了一个 Util 类的对象,并调用其 minimum() 方法来获取最小值给定两个数字 -
package com.yxjc123;
class Util {
public int minimum(int n1, int n2) {
int min;
if (n1 > n2)
min = n2;
else
min = n1;
return min;
}
}
public class Tester {
public static void main(String[] args) {
int a = 11;
int b = 6;
Util util = new Util();
int c = util.minimum(a, b);
System.out.println("Minimum Value = " + c);
}
}
输出
Minimum value = 6
Java 类方法中的 this 关键字
this 是 Java 中的关键字,它是用作对当前类的对象的引用,用于实例方法或构造函数。使用this您可以引用类的成员,例如构造函数、变量和方法。
注意 - 关键字this 仅在实例方法或构造函数中使用
一般来说,关键字 this 用于
区分构造函数或方法中具有相同名称的实例变量和局部变量。
class Student {
int age;
Student(int age) {
this.age = age;
}
}
调用一个类中其他构造函数的类型(参数化构造函数或默认构造函数)。这称为显式构造函数调用。
class Student {
int age
Student() {
this(20);
}
Student(int age) {
this.age = age;
}
}
示例:在 Java 类方法中使用 this 关键字
这里是一个使用 this 关键字的示例 访问类的成员。将以下程序复制并粘贴到名为 Tester.java 的文件中。
package com.yxjc123;
public class Tester {
//实例变量num
int num = 10;
Tester() {
System.out.println("This is an example program on keyword this");
}
Tester(int num) {
//调用默认构造函数
this();
//将局部变量num赋值给实例变量num
this.num = num;
}
public void greet() {
System.out.println("Hi Welcome to yxjc123");
}
public void print() {
//局部变量num
int num = 20;
//打印局部变量
System.out.println("value of local variable num is : "+num);
//打印实例变量
System.out.println("value of instance variable num is : "+this.num);
//调用类的greet方法
this.greet();
}
public static void main(String[] args) {
//实例化类
Tester obj1 = new Tester();
//调用打印方法
obj1.print();
// 通过参数化构造函数将新值传递给 num 变量
Tester obj2 = new Tester(30);
//再次调用打印方法
obj2.print();
}
}
输出
This is an example program on keyword this
value of local variable num is : 20
value of instance variable num is : 10
Hi Welcome to yxjc123
This is an example program on keyword this
value of local variable num is : 20
value of instance variable num is : 30
Hi Welcome to yxjc123
Public 和静态类方法
类方法有public和static类方法两种。 公共类方法是通过对象访问的,而静态类方法是在没有对象的情况下访问的。您可以直接访问静态方法。
示例
以下示例演示公共类方法和静态类方法之间的区别:
public class Main {
//创建静态方法
static void fun1() {
System.out.println("fun1: This is a static method.");
}
// 创建公共方法
public void fun2() {
System.out.println("fun2: This is a public method.");
}
// main() 方法
public static void main(String[] args) {
//通过类访问静态方法
fun1();
// 创建Main类的对象
Main obj = new Main();
//通过对象访问公共方法
obj.fun2();
}
}
输出
fun1: This is a static method.
fun2: This is a public method.
finalize( ) 方法
可以定义一个在垃圾收集器最终销毁对象之前调用的方法。该方法称为finalize( ),它可用于确保对象干净地终止。
例如,您可以使用finalize( ) 来确保打开一个对象该对象拥有的文件已关闭。
要将终结器添加到类中,只需定义finalize( ) 方法即可。 Java 运行时每当要回收该类的对象时都会调用该方法。
在 Finalize( ) 方法内,您将指定在销毁对象之前必须执行的操作。
finalize( ) 方法具有以下一般形式 -
protected void finalize( ) {
//这里是最终代码
}
这里,关键字 protected 是一个说明符,可防止在其类外部定义的代码访问 Finalize( )。
这意味着你无法知道finalize()何时或是否会被执行。例如,如果您的程序在垃圾回收发生之前结束,则 Finalize( ) 将不会执行。