JAVA复习题继承 下载本文

3)若a是类A的对象,则a.toString( )的返回值是什么? (Hello!

How are you?)

4)若b是类B的对象,则b.toString( )的返回值是什么?(Hello,Bill.) 2.现有一个类定义如下,请回答问题: class Employee {

String name; int age; double wage; static int No=0;

Employee(String a1,int a2,double a3) {

name=a1; age=a2; wage=a3; No++; } }

在使用该类时,已使用下面语句生成了该类的对象:

Employee e1,e2;

e1=new Employee(\王劲\

e2=new Employee(\张山\

问题:

1)e2.name,e2.age,e2.wage的值各是什么?(张山;30;3800.0)

2)生成对象e1、e2后,e1.No值为多少?能否通过类名做前缀引用属性No?(2; 能) 3.阅读程序,回答问题。 public class InheritTest1 {

public static void main (String[] args) {

A aa; B bb; aa=new A( ); bb=new B( ); aa.show( ); bb.show(); } } class A {

int a=1; double d=2.0; void show( )

{ } }

class B extends A {

float a=3.0f;

String d=\ int b=4; void show( ) {

super.show( ); } }

问题:1)这是哪一类java程序?(java应用程序) 2)类A和类B是什么关系?(类B是类A的子类)

3)按程序输出的格式写出程序运行后的结果.

(程序运行结果如下:

Class A: a=1 d=2.0 Class A: a=1 d=2.0 Class A: a=1 d=2.0

Class B: a=3.0 d=Java program. b=4 ) 4.现有类说明如下,请回答问题: class A {

int x=10;

int getA(){return x;} }

class B extends A {

int x=100;

int getB(){return x;} }

问题:1)类B是否能继承类A的属性x?(能)

2)若b是类B的对象,则b.getB()的返回值是什么?( 3)若b是类B的对象,则b.getA()的返回值是什么?(4)类A和类B都定义了x属性,这种现象称为什么?(属性的隐藏)

5.有如下源程序,请回答问题:

class A

100)10)

{ String s=\ class B extends A

{ String s=\ public class TypeConvert { }

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

B b1,b2=new B(); A a1,a2; a1=(A)b2; a2=b2; b1=(B)a1;

问题: 该程序的四行输出各是什么? (class A class A class B class B)