Java认证考试综合练习

单选题现有      public class Parentt      public void change (int x){)     )      public class Child extends Parent{     //覆盖父类change方法     }      下列哪个声明是正确的覆盖了父类的change方法?()Aprotected void change (int x){}Bpublic void change(int x,  int y){}Cpublic void chang

题目
单选题
现有      public class Parentt      public void change (int x){)     )      public class Child extends Parent{     //覆盖父类change方法     }      下列哪个声明是正确的覆盖了父类的change方法?()
A

  protected void change (int x){}

B

  public void change(int x,  int y){}

C

  public void change (int x){}

D

  public void change (String s){}

参考答案和解析
正确答案: D
解析: 暂无解析
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如下的类定义,括号里应填( )。 class Myclass { public: MyClass(int a =0,int b =0) { X=a; Y=b; void Change ( ) const { X- =10; Y+ =10; public: ( )int X,Y;

A.static

B.const

C.mutable

D.可以不添内容


正确答案:C
解析:常成员函数一般不能修改对象的数据成员的值,如果一定要修改,必须得在被修改的数据成员定义前加上关键字mutable。

第2题:

以下程序的执行结果是______。 include class A{ int a: public: void seta(int x) {

以下程序的执行结果是______。

include<iostream.h>

class A

{

int a:

public:

void seta(int x) {a=x;}

void showa() {cout<<a<<end1;}

};

class B

{

int b;

public:

void setb(int x) {b=x;}

void showb(){cout<<b<<end1;}

};


正确答案:1 3
1 3

第3题:

能将程序补充完整的选项是( )。class Person{ private int a; public int change(int m){ return m; }}public class Teacher extends Person{ public int b; public static void main(String arg[]) { Person p = new Person(); Teacher t = new Teacher(); int i; ______ }} B.

A.i=m

B.i=b

C. i=p.a

D.i=p. change(50)


正确答案:D

第4题:

若有以下程序:includeusing namespace std;class data{public: int x; data(int x){

若有以下程序: #include<iostream> using namespace std; class data { public: int x; data(int x) { data::x=x; } class A private: data dl; public: A(int x): dl(x){ } void dispaO cout<<dl.x<<","; } }; class B: public A { private: data d2; public: B(int x):A(x-1),d2(x){ } void dispb() { cout<<d2.x<<endl; } }; class C: public B { public: C(int x):B(x-1){ } void disp0 { dispa(); dispb(); } }; int main() { C obj(5); obj.disp(); return 0; } 程序执行后的输出结果是( )。

A.5,5

B.4,5

C.3,4

D.4,3


正确答案:C

第5题:

将下面程序补充完整。 include using namespace std; class Base{ public: 【 】fun(){r

将下面程序补充完整。

include <iostream>

using namespace std;

class Base{

public:

【 】 fun(){return 0;} //声明虚函数

};

class Derived:public Base{

public:

x,y;

void SetVal(int a,int b){}

int fun(){return x+y;}

};

void 【 】 SetVal(int a,int b){x=a;y=b;} //类Derived成员函数

void main(){

Derived d;

cout<<d.fun()<<endl;

}


正确答案:virtual int Derived::
virtual int Derived:: 解析:virtual int用于声明虚函数;Derived::用于指定类Derived成员函数。

第6题:

下列程序的运行结果是______。include class Base { public: void f(int x){cout<<“B

下列程序的运行结果是______。

include<iostream.h>

class Base

{

public:

void f(int x){cout<<“Base:”<<x<<endl;}

);

class Derived:public Base

{

public:

void f(char*str){cout<<“Derived:”<<str<<endl;}

};

void main(void)

{

Base*pd=ne


正确答案:Base:97。
Base:97。 解析: 本题主要考查两个知识点,一是基类指针可以指向派生类对象,并可以访问派生类的所有成员。二是在函数重载中进行隐式类型转换。如pd->f(‘a’);系统到底调用哪个重载函数呢?实参既不是派生类中的形参,也不是基类中f函数的形参类型。此时系统根据就近原则和从高优先级到低优先级的规则尝试隐式转换。单字符更接近整数,故调用的是基类的f函数。

第7题:

interface A{

int x = 0;

}

class B{

int x =1;

}

class C extends B implements A {

public void pX(){

System.out.println(x);

}

public static void main(String[] args) {

new C().pX();

}

}


正确答案:

 

错误。在编译时会发生错误(错误描述不同的JVM 有不同的信息,意思就是未明确的

x 调用,两个x 都匹配(就象在同时import java.util 和java.sql 两个包时直接声明Date 一样)。

对于父类的变量,可以用super.x 来明确,而接口的属性默认隐含为 public static final.所以可

以通过A.x 来明确。

第8题:

下列哪个方法可用于创建一个可运行的类? ( )

A.public class X implements Runable {public void run(){...,.,}}

B.public class X implements Thread {public void run(){......}}

C.public class X implements Thread {public int run(){……}}

D.public class X implements Runable {protected void run(){.....}}


正确答案:A

第9题:

有以下程序: include class A { intx; public: A(int a) { x=a;} friend class B;

有以下程序:

include<iostream.h>

class A

{

int x;

public:

A(int a)

{

x=a;

}

friend class B;

}

class B{

public:

void print(A a){

a. x--;

cout<<a.x<<end1;

}

};

void main()

{

A a(10);

B b;

b.print(a) ;

}

程序执行后的输出结果是【 】。


正确答案:9
9 解析:本题考核友元类的应用。在程序中,类B是类A的友元类,因此,在类B的所有成员函数中均可访问类A的任何成员。在main()中,先定义类A的一个对象a(10)和类B的一个对象b。然后通过对象b调用其成员函数print输出对象a的私有成员x的值减1即9。

第10题:

若有以下程序:include using namespace std;class data{public: int x; data (int x)

若有以下程序: #include <iostream> using namespace std; class data { public: int x; data (int x) { data: :x=x; } }; class A { private: data d1; public: A(int x) : d1 (x) { } void dispa() { cout<<d1, x<<", "; } }; class B: public A { private: data d2; public: B(int x) : A(x-1),d2(x) {} void dispb() { cout<<d2.x<<end1; } }; class C : public B { public: C(int x) : B(x-1){} void disp () { dispa ( ); dispb (); } }; int main ( ) { C obj (5); obj.disp(); return 0; } 程序执行后的输出结果是( )。

A.5,5

B.4,5

C.3,4

D.4,3


正确答案:C
解析:本题考核派生类的定义和访问权限。本题涉及多层次的继承关系。类B是类A的派生类,类C又是类B的派生类。类C中的构造函数调用了类B的构造函数来初始化类B的私有数据成员,而类B的构造函数又调用了类A的构造函数来初始化类A的私有数据成员。由此可知,程序最后的输出为3,4。

更多相关问题