我们能从 Java 中的构造函数中调用"this"关键字上的方法吗?
java 8object oriented programmingprogramming
Java 中的“this”关键字用作对当前对象的引用,在实例方法或构造函数中。使用 this,您可以引用类的成员,例如构造函数、变量和方法。
使用 this 关键字从构造函数调用方法
是的,如上所述,我们可以从实例方法或构造函数调用类的所有成员(方法、变量和构造函数)。
示例
在下面的 Java 程序中,Student 类包含两个带有 setter 方法的私有变量 name 和 age,以及一个接受这两个值的参数化构造函数。
从构造函数中,我们使用 "this" 关键字调用 setName() 和 setAge() 方法,并将获得的 name 和 age 值分别传递给它们。
从主方法中,我们从用户读取 name 和 age 值,并通过传递它们来调用构造函数。然后我们使用 display() 方法显示实例变量 name 和 class 的值。
public class Student { private String name; private int age; public Student(String name, int age){ this.setName(name); this.setAge(age); } public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public void display(){ System.out.println("学生姓名:"+this.name ); System.out.println("学生年龄:"+this.age ); } public static void main(String args[]) { //从用户读取值 Scanner sc = new Scanner(System.in); System.out.println("输入学生姓名:"); String name = sc.nextLine(); System.out.println("输入学生的年龄:"); int age = sc.nextInt(); //调用接受两个值的构造函数 new Student(name, age).display(); } }
输出
Rohan 输入学生的年龄: 18 学生姓名:Rohan 学生年龄:18