Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在未知区域中输入什么可以使断言为真?_Java_Assertion - Fatal编程技术网

Java 在未知区域中输入什么可以使断言为真?

Java 在未知区域中输入什么可以使断言为真?,java,assertion,Java,Assertion,这是一道测试题。我可以添加到[???]中,但不能编辑代码的其余部分。我应该补充什么 class Primary{Primary(String name){this.name=name;}String name;} class Secondary extends Primary{[?????]} public class Exercise{ public static void main(String [] arg){ assert (!new Secondary().name.

这是一道测试题。我可以添加到[???]中,但不能编辑代码的其余部分。我应该补充什么

class Primary{Primary(String name){this.name=name;}String name;}

class Secondary extends Primary{[?????]}

public class Exercise{

  public static void main(String [] arg){
    assert (!new Secondary().name.equals(new Secondary().name));
  }
}

依我看,你的问题不清楚。除了更改B的构造函数外,该断言可能始终为false

public class Test {
 class A{
     String name;
     A(String name){
         this.name = name;
     }
 }

 class B extends A{
     B(String name){
         //super(name + "something else"); //asseration will be true.
         super(name);
     }
 }

 public static void main(String[] args){
     Test t = new Test();
     A a = t.new A("uttp");
     B b = t.new B("uttp");

     System.out.println(!a.name.equals(b.name));
 }
}

这里有一个答案,它只对问题的[??]部分进行了严格的修改:

class A{A(String name){this.name=name;System.out.println(name+" <-- name");}String name;}

class B extends A{
    static int instanceCount = 0;
    public B() {
        super(instanceCount++ % 2 == 0 ? "CandiedOrange" : "uttp");
    }
}

public class Exercise{

  public static void main(String [] arg){
    //assert(false);
    assert (!new B().name.equals(new B().name));
  }
}

class A{A(字符串名){this.name=name;System.out.println(name+”@RoguePakeha最受欢迎。记住向上投票并接受答案。
CandiedOrange <-- name
uttp <-- name