publicclassPerson{privatename;publicPerson(Stringname){this.name=name;}publicbooleanequals(Objecto){if(!oinstanceofPerson)returnfalse;Personp=(Person)o;returnp.name.equals(this.name);}}Whichistrue?()A.CompilationfailsbecausethehashCodemethodisnotoverridde

题目
publicclassPerson{privatename;publicPerson(Stringname){this.name=name;}publicbooleanequals(Objecto){if(!oinstanceofPerson)returnfalse;Personp=(Person)o;returnp.name.equals(this.name);}}Whichistrue?()

A.CompilationfailsbecausethehashCodemethodisnotoverridden.

B.AHashSetcouldcontainmultiplePersonobjectswiththesamename.

C.AllPersonobjectswillhavethesamehashcodebecausethehashCodemethodisnotoverridden.

D.IfaHashSetcontainsmorethanonePersonobjectwithname=”Fred”,thenremovinganother person,alsowithname=”Fred”,willremovethemall.


相似考题
参考答案和解析
参考答案:B
更多“publicclassPerson{privatename;publicPerson(Stringname){this.name=name;}publicbooleanequals(Objecto){if(!oinstanceofPerson)returnfalse;Personp=(Person)o;returnp.name.equals(this.name);}}Whichistrue?() ”相关问题
  • 第1题:

    publicclassPlant{privateStringname;publicPlant(Stringname){this.name=name;}publicStringgetName(){returnname;}}publicclassTreeextendsPlant{publicvoidgrowFruit(){}publicvoiddropLeaves(){}}Whichistrue?()

    A.Thecodewillcompilewithoutchanges.

    B.ThecodewillcompileifpublicTree(){Plant();}isaddedtotheTreeclass.

    C.ThecodewillcompileifpublicPlant(){Tree();}isaddedtothePlantclass.

    D.ThecodewillcompileifpublicPlant(){this(”fern”);}isaddedtothePlantclass.

    E.ThecodewillcompileifpublicPlant(){Plant(”fern”);}isaddedtothePlantclass.


    参考答案:D

  • 第2题:

    给出下面不完整的类代码,则横线处的语句应该为( )。 class Person { String name,department; int age; public Person (Strings) {name=s;} public Person (String s,int

    A.{name=s;age=a;} public Person (String n,String d,intA){ __________ department=d; } }A)Person (n,A);

    B.this (Person(n,A));

    C.this(n,A);

    D.this(name,age);


    正确答案:C
    解析:本题主要考查在同一个类的不同构造方法中调用该类的其他构造方法需要使用 this(…)的形式,而且必须是在构造方法的第一行调用。这个和普通方法重载调用的方式不同,普通方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此选项A是不行的,选项B的语法就是错误的,选项D的错误在于在父类型的构造方法被调用前不能引用类的成员。构造方法是一个类对象实例化的开始,因此在构造方法中不能将成员作为参数引用。

  • 第3题:

    Person p = new Person(“张三”,23);这条语句会调用下列哪个构造方法给属性进行初始化()

    A.public Person(){}

    B.public Person(String name,int age) { this.name = name; this.age = age; }

    C.public Person(int age,String name) { this.age = age; this.name = name; }

    D.public Person(String name) { this.name = name; }


    答案:B
    解析:创建对象时会找到匹配的构造方法给属性进行初始化,由于Person p = new Person(“张三”,23);这条语句中有两个参数,而且第1个参数是String类型的,第2个参数是int类型的,因此会调用B选项中的构造方法。

  • 第4题:

    publicclassPerson{privatename;publicPerson(Stringname){this.name=name;}publicinthashCode(){return420;}}Whichistrue?()

    A.ThetimetofindthevaluefromHashMapwithaPersonkeydependsonthesizeofthemap.

    B.DeletingaPersonkeyfromaHashMapwilldeleteallmapentriesforallkeysoftypePerson.

    C.InsertingasecondPersonobjectintoaHashSetwillcausethefirstPersonobjecttoberemovedasaduplicate.

    D.ThetimetodeterminewhetheraPersonobjectiscontainedinaHashSetisconstantanddoesNOTdependonthesizeofthemap.


    参考答案:A

  • 第5题:

    给出下列的不完整的类代码,则下列的哪个语句可以加到横线处? class Person { String name,department; int age; public Person( String n ){ name = n;} public Person( String n,int a ) { name = n;age = a;} public Person( String n,String d,int a ) { _____________ department = d; } }

    A.Person(n,a);

    B.this(Person(n,a) );

    C.this(n,a);

    D.this(name,age);


    正确答案:C
    解析:在同一个类的不同构造方法中调用该类的其他构造方法需要使用this(…)的形式,而且必须是在构造方法的第一行调用,这个和普通方法重载调用的方式不同,普通方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此选项A)是不行的,选项B)的语法就是错误的,选项D)的错误在于在父类型的构造方法被调用前不能引用类的成员。构造方法是一个类对象实例化的开始,因此在构造方法中不能将成员作为参数引用。