我想问一个有关Java构造函数的问题。
示例,我有" A"类和" B"类,并且在" B"类中创建了构造函数。在正常的方式中,当我在" A类的主要方法中创建" B"类对象时," B类"构造函数将自动工作。因此,我的问题是当我在" A"类中创建B类对象时,我想在工作构造函数之前先开始其他功能。那我该怎么办?
public class A {
public static void main(String[] args) {
B b = new B();
}
}
public class B {
public B() {
System.out.print("Hello Constructor");
}
public void m() {
System.out.print("Hello Method");
}
}
正常:: output :: hello constructor 你好方法
我想要此输出:: 你好方法你好constructor
可以吗?对不起,我的英语不好...
在B的构造函数中,调用方法M。您的问题有点混乱,但是如果我正确理解您,这就是您想要的。
public class A{
public static void main(String[] args){
B bb=new B();
}
public class B{
public B(){
M();
System.out.print("Hello Constructor");
}
public void M(){
System.out.print("Hello Method");
}
实际上你不能以自己的思维方式做到这一点(或者我不知道一种方法),但是您可以尝试以下方法:
public class A {
public static void main(String[] args) {
B b = new B();
}
}
public class B {
public B() {
//write what are you wanting to do like m(); for this exapmle
System.out.print("Hello Constructor");
}
public void m() {
System.out.print("Hello Method");
}
}
它的简单技巧,但它是wokrs。通过您可以在没有构造函数的情况下尝试它,例如用另一种方法初始化变量:
public class A{
public static void main(String[] args){
B bb=new B();
bb.m();
bb.b();
}
public class B{
public void b(){
System.out.print("Hello Constructor");
}
public void m(){
System.out.print("Hello Method");
}