首页 > 试题广场 >

一个类的构造器不能调用这个类中的其他构造器。( )

[单选题]

一个类的构造器不能调用这个类中的其他构造器。( )



  • 正确
  • 错误
this()和super()都是构造器,this()调用本类构造器,super()调用父类构造器
发表于 2019-07-25 20:42:21 回复(4)
public class Demo {
private int x;
private String string;
public Demo(int x) {
this.x = x;
}
public Demo(int x,String string){
this(x);
this.string=string;
}
}
发表于 2017-05-23 08:25:04 回复(5)
this就可以~
发表于 2017-06-05 19:25:49 回复(1)
选B
this(x),这种形式的调用就ok
发表于 2018-06-29 12:05:43 回复(0)

this调用自身的构造器super调用父类的构造器


发表于 2020-04-20 08:53:06 回复(1)

举一个刚学的例子,如何给属性一个默认值

public class Constructor {
    public static void main(String[] args) {

        Person person = new Person("Harvay",20);
        System.out.println("person = " + person);
    }
}

class Person {
    private String name;
    private int age;
    private char gender;

    public Person(String name, int age) {
        this(name, age, '男');
    }
    public Person(String name, int age, char gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", gender=" + gender +
                '}';
    }
}

学的时候老师把这个叫做 兄弟构造器

在创建对象的时候不想赋这么多值,除了set方法还可以以这种方式创建对象

运行结果:

运行结果

发表于 2020-11-05 08:51:18 回复(0)
  1. public   class  test {  
  2.     protected   int  pos =  0 ;  
  3.     public  test (){  
  4.         this ( 1 );  
  5.         System.out.println("test1" );  
  6.     }  
  7.     public  test ( int  k){  
  8.         this ( 1.0 );  
  9.         System.out.println("test2" );  
  10.     }  
  11.     public  test ( double  dim){  
  12.         System.out.println("test3" );  
  13.     }  
发表于 2017-06-01 21:54:31 回复(0)
构造器的复用

public class ATest { public int t1; public int t2; public ATest(int t1){ this.t1 = t1;
    } // 利用this可以复用构造方法  public ATest(int t1, int t2){ this(t1); this.t2 = t2;
    } public static void main(String[] args) {
        ATest at1 = new ATest(1);
        System.out.println(at1.t1);
        ATest at2 = new ATest(1,2);
        System.out.println(at1.t1+" "+at1.t2);
    }
}

发表于 2018-09-20 15:55:47 回复(0)
错误,可以用  用this
发表于 2017-05-24 08:56:58 回复(4)
this调用自身的,super调用父类的
发表于 2022-12-01 16:18:26 回复(0)
通过this关键字可以实现同一个类中,不同构造函数的调用
发表于 2019-09-10 16:15:53 回复(0)

在Java中,一个类的构造器是可以调用同一个类中的其他构造器的,通过使用关键字 this 来实现。使用 this 关键字可以在一个构造器内部调用同一类中的其他构造器,从而避免了代码重复的问题。例如:

public class MyClass {
    private int x;
    private int y;

    public MyClass(int x) {
        this(x, 0);
    }

    public MyClass(int x, int y) {
        this.x = x;
        this.y = y;
    }
}

在上面的代码中,第一个构造器调用了同一个类中的第二个构造器,通过使用 this 关键字来避免了重复的代码。

发表于 2023-04-24 15:18:37 回复(0)
this()用来调用本类构造器,super调用父类
发表于 2022-12-30 22:09:09 回复(0)
我就是说怎么错了,this方法一直在用
发表于 2022-12-07 03:19:01 回复(0)
可以通过this(参数) 调用本类的构造方法,调用构造方法的语句要放到第一句
发表于 2022-10-09 09:33:43 回复(0)
this()和super()都是构造器,this()调用本类构造器,super()调用父类构造器
发表于 2022-08-23 19:31:38 回复(0)
 在构造器的代码内部用super调用父类构造器,或者this调用本类构造器

发表于 2022-07-12 11:03:03 回复(0)
this(参数列表),调用子类构造器
发表于 2022-06-01 10:37:37 回复(0)
一个构造方法可以调用当前类中的其他构造方法,这样做的目的是便于代码复用。调用其他构造方法的语法是this(…)
发表于 2021-11-27 19:51:12 回复(0)
子类继承父类时,子类构造器调用父类构造器,super()
发表于 2021-11-02 20:23:48 回复(0)