JAVA基础 第4章继承与多态 - 练习题 - 200910 联系客服

发布时间 : 星期三 文章JAVA基础 第4章继承与多态 - 练习题 - 200910更新完毕开始阅读6a9bf9b2852458fb760b564e

Java基础 第4章练习题 大外软件学院

}

int k=40; void f(){

System.out.print(\

} void g(){

System.out.print(\

}

public static void main(String args[]){

parent x=new child(); System.out.print(x.i); x.f();

child x1=(child)x;

System.out.print(\x1.f();

}

A.30 30 30 30 B.20 20 20 20

32.什么样的方法不能被重写( B )。

A.私有方法

B.最终方法(final方法) C.受保护的方法 D.都不对

C.20 30 30 30 D.都不对

33.如果一个成员变量声明时必须赋给初值,而且不能再发生变化,那么这个成员变量是( B )。

A.私有变量 B.最终变量(常量) C.受保护的变量 D.都不对

34.关于重载和重写的叙述正确的是( D)。

A.重载是多态的一种,而重写不是

B.重载是子类中定义的方法和父类中某个方法相同 C.重写是一个类中多个同名的方法,并且方法的参数不同 D.重写方法时不允许降低方法的访问权限

二.编程题

1. 创建2个包:a和b。在包a中编写一个公共类A,类A中有:2个public double类型的属性c、d;一个构造方法public A(double x,double y)对c,d进

行初始化;还有一个方法public double add()返回c与d的和。在包b中编写一个主类B,在类B的main方法中创建类A的对象e, 并用对象e调用方法add求2个数的和。 1.package a;

public class A {

public double c,d;

public A(double x, double y){ }

public double add(){

return c+d; c = x; d = y;

第9页 共12页

Java基础 第4章练习题 大外软件学院

} package b; import a.A; class B {

}

}

public static void main(String[] args) { }

A e = new A(1,2)

System.out.println(\两个数之和:\

2. 编写一个类A,该类创建的对象可以调用方法f输出小写的英文字母表。然后再编写一个A类

的子类B,要求子类B必须继承A类的方法f(不允许重写),子类B创建的对象不仅可以调 用方法f输出小写的英文字母表,而且可以调用子类新增的方法g输出大写的英文字母表。 最后编写主类C,在主类的main方法中测试类A与类B。 2.class A {

}

class B extends A{

} class C{

}

3.编写一个Java应用程序,该程序包括3个类: A类、B类和主类E。其中类B是类A的子类,

在子类B中新增了成员变量和成员方法,并且隐藏了父类A的成员变量和重写了父类A的成员 方法。在主类E的main方法中,创建类B的对象并赋给父类A的对象a,使用上转型对象a

public static void main(String args[]){ }

A a = new A(); B b=new B(); a.f(); b.f(); b.g();

void g(){ }

char c;

System.out.println(\输出大写的英文字母表:\for(c='A'; c<='Z'; c++)

System.out.print(\ \

}

}

System.out.println();

void f(){

System.out.println(\输出小写的英文字母表:\char c;

for(c='a';c<='z';c++) {

System.out.print(\ \

System.out.println();

第10页 共12页

Java基础 第4章练习题 大外软件学院

来测试上转型对象的一些特性。 3.class A { }

class B extends A { } class E {

}

4.编写一个Java应用程序,该程序包括3个类:类人猿类、People类和主类E。要求:

1)类人猿中有个构造方法:类人猿(String s),并且有个public void speak()方法,在

speak方法中输出“咿咿呀呀......”的信息。

2)People类是类人猿的子类,在People类中重写方法speak(),在speak方法中输出

“小样的,不错嘛!”的信息。

3)在People类中新增方法void think(),在think方法中输出“别说话!认真思考!”。 4)在主类E的main方法中创建类人猿与People类的对象类测试这两个类的功能。

4.class 类人猿{

}

class People extends 类人猿{

People(){ 类人猿(String s){ }

}

}

public static void main(String[] args){

A a = new B();

System.out.println(\System.out.println(\a.a(); a.b();

//extends

//隐藏

//extends

//重写

} } void c(){

System.out.println(\

int j = 20; int k =200; void b(){

System.out.println(\

} } void b(){

System.out.println(\

int i=1; int j=10; void a(){

System.out.println(\

public void speak(){

System.out.println(\咿咿呀呀......\

第11页 共12页

Java基础 第4章练习题 大外软件学院

}

super(\

public void speak(){ }

void think(){

System.out.println(\别说话!认真思考!\

System.out.println(\小样的,不错嘛!\

}

}

class E{ public static void main(String[] args){ 类人猿 yuan = new 类人猿(\ yuan.speak();

People p = new People(); p.speak();

p.think();

}

}

第12页 共12页