概述
构造函数类似于方法,它在创建类的对象时被调用,通常用于初始化类的实例变量。构造函数与它们的类同名,并且没有返回类型。
无需显式调用构造函数,这些构造函数会在实例化时自动调用。
Java中的this关键字是对当前类的对象的引用。使用它,您可以引用类的字段,方法或构造函数。
因此,如果需要显式调用构造函数,则可以使用“ this()”进行。
从方法调用构造函数
不,不能从方法调用构造函数。唯一可以使用“this()”或“super()”调用构造函数的地方是另一个构造函数的第一行。如果尝试在其他地方显式调用构造函数,将生成编译时错误。
例子import java.util.Scanner;
public class Student {
private String name;
private int age;
Student(){}
Student(String name, int age){
this.name = name;
this.age = age;
}
public void SetValues(String name, int age){
this(name, age);
}
public void display() {
System.out.println("name: "+this.name);
System.out.println("age: "+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();
Student obj = new Student();
obj.SetValues(name, age);
obj.display();
}
}
编译时错误Student.java:12: error: call to this must be first statement in constructor
this(name, age);
^
1 error
最后
以上就是虚拟白昼为你收集整理的java调用构造方法_在java中可以直接从方法调用构造函数吗?的全部内容,希望文章能够帮你解决java调用构造方法_在java中可以直接从方法调用构造函数吗?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复