A.当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆盖父类中的成员方法
B.方法重载是编译时处理的,而方法覆盖是在运行时处理的
C.子类中继承父类中的所有成员都可以访问
D.子类中定义有与父类同名变量时,在子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量
A.当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆盖父类中的成员方法
B.方法重载是编译时处理的,而方法覆盖是在运行时处理的
C.子类中继承父类中的所有成员都可以访问
D.子类中定义有与父类同名变量时,在子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量
有如下两个类的定义: class AA{}; class BB{ AA vl,*v2; BB v3: int*v4: }; 其中有一个成员变量的定义是错误的,这个变量是
A.v1
B.v2
C.v3
D.v4
假设学生的属性包括学号(int类型)、姓名(String类型)、数学成绩(double类型)和计算机成绩(double类型),要求: (1)声明学生类Student,其中包括上述要求的成员变量和构造方法,还要有一个void print()方法,功能是输出成员变量(4个成员变量)的信息。 (2)声明学生类Student的子类,也就是研究生类PostGraduate,其中,研究生类继承了父类的学号、姓名、数学成绩和计算机成绩,此外,研究生类还有自己的两个新属性导师姓名(String类型)和研究方向(String类型)。还有,研究生类要重写父类的void print()方法,功能是输出成员变量(6个成员变量)的信息。(想一想研究生的构造方法怎么写,提示,从父类继承的成员变量可以在子类的构造方法中使用super关键字。) (3)声明主类,在主方法main中,创建一个Student类的对象,从键盘上输入其属性信息,并且通过其print方法输出这些信息;创建一个PostGraduate类的对象,从键盘上输入其属性信息,并且通过其print方法输出这些信息。 以上要求的内容可以放在同一个源程序中,也可以放在不同的源程序中(放在不同的源程序的情况需要注意包的声明和引用)。 同学们做这次作业的时候,在声明类的时候,需要按照以下说明的规则来做: (1)在声明类的时候,如果类中有成员变量,一般不建议创建了类对象之后,通过运算符“.”去调用成员变量,最好是通过函数间接地使用成员变量。(当然,咱们的讲课视频中为了举例简单,还是用了运算符“.”去调用成员变量。) (2)所以,对于每一个成员变量,最好都为其设置两个方法,一个是set方法,功能是通过这个方法修改成员变量的值,另一个是get方法,功能是通过这个方法获取成员变量的值。 (3)例如,以下有类A的声明,它有两个int类型的成员变量x和y,则类A的声明如下,注意观察,对于每一个成员变量的set和get方法,以及它们的参数类型和方法的返回类型,还有print方法中,输出成员变量的值时,也是通过函数获取值: class A { int x,y; A(int x,int y) { this.x=x; this.y=y; } void setX(int a) { x=a; } int getX() { return x; } void setY(int b) { y=b; } int getY() { return y; } void print() { System.out.println("x的值为"+this.getX()+"y的值为"+this.getY()); } }
实验要求: 编写类1,2,4。在测试类里完成3,5。写上机实验报告,给出思考题答案。 实验内容: 1) 设计一个表示二维平面上点的类Point, 功能要求: l 包含有表示坐标位置的成员变量x和y l 一个构造方法:Point(int x,int y) l 获取x 和y值的public方法:int getX()和int getY() 2) 设计一个表示二维平面上圆的类Circle,它继承类Point, 功能要求: l 包含有表示圆半径的private类型的成员变量r l 两个构造方法:Circle(int r,int x,int y)和Circle(),无参构造方法要给x,y,r都赋给初值0 n 注意:需要使用super关键字调用父类构造方法 n 思考:为什么必须调用父类构造方法? l 获取和设置r值的public方法:int getR()和void set(int r) l 计算圆面积的public方法:double area(int r) l 增加一个和Point类同名的成员变量x,和一个方法void disp (),请在该方法里实现对Point类中成员变量x的访问。 n 思考:super关键字的用法有哪些? 3) 建立若两个Circle对象c1,c2,建立一个Point的对象p。 l 输出对象c1和c2的轴心位置坐标、半径和面积的值 l 通过c1对象访问Point类中成员变量x l 用变量p引用Circle对象c1,测试一下p能引用的成员 n 思考:父类的引用去引用子类对象时,能访问的成员有哪些? 有余力的同学可以完成下2题:(加分20) 4) 设计一个表示圆柱体的类Cylinder,它继承自类Circle, 功能要求: l 包含有表示圆柱体高的private类型的成员变量h l 构造方法:Cylinder(int h,int r,int x,int y) l 获取和设置h值的public方法 l 计算圆柱体体积的public方法 double volume(int h) l 重写从Circle类中继承来的void disp ()方法,功能是打印出h和圆柱体的体积 5) 编写一个Cylinder对象,调用所有能调用的方法,查看结果
A.当一个类中有指针成员变量时,浅拷贝有可能会导致一片内存被重复释放
B.当一个类中有指针成员变量时,浅拷贝有可能导致一个对象中保存的数据不正确
C.如果一个类中只有int型和double型的成员变量,则浅拷贝不会出现任何问题
D.如果一个类中有一个成员变量是char型数组,则使用浅拷贝会存在问题
A.v1
B.v2
C.v3
D.v4
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!