大学网课搜题引擎
首页
北京学银在线教育科技有限公司
高级语言程序设计(C#)
9 类的继承和多态
题目详情
多选题
以下关于this关键字和base关键字的说法,不正确的是( ) A.
this关键字用于引用类的当前实例 B.
base关键字用于从派生类中访问基类的成员 C.
静态成员方法中不能使用this关键字 D.
静态成员方法中能使用base关键字
查看答案与解析
简答题
public abstract class A { protected int a; public abstract void DoWork(); } public class B : A { public B() { this.a = 0; } public B(int num) { this.a = num; } public override void DoWork() { Console.WriteLine(this.a); } } class Program { static void Main(string[] args) { A a = new B(); a.DoWork(); B b = new B(3); b.DoWork(); } } 以上程序的运行结果是_____________________。(可能有多行)
简答题
C#中,一个基类可以派生出多个子类,一个类只能有一个基类。 正确 错误
多选题
类的以下特性中,可以用于方便地重用已有的代码和数据的是( ) A. 多态 B. 封装 C. 继承 D. 抽象
简答题
抽象类没有实际实现语句,它就是用来给别人继承的。 正确 错误
多选题
如果一个类需要继承一个基类,需要使用( )符号表示它们的继承关系 A. 逗号 B. 分号 C. 冒号 D. 以上都可以
多选题
以下哪个是软件重用的一种形式 A. 重载 B. 继承 C. 多态 D. 事件
多选题
下列关于接口的说法不正确的是 A. 接口不能实例化 B. 接口中声明的所有成员隐式地为public和abstract C. 接口默认的访问修饰符是private D. 继承接口的任何非抽象类型都必须实现接口的所有成员
简答题
派生类继承了基类的所有成员,包括基类的字段、属性、方法和构造函数 正确 错误
简答题
程序填空题: (1)设计一个圆类(Circle),计算周长( perimeter)和计算面积( area)的方法。 (2)设计一个圆柱体类(Cylinder),圆柱体类继承自圆类,能计算圆柱体的表面积(area)和计算体积(volumn)。 (3)创建半径为5的圆对象,显示其面积。创建半径为3,高为7的圆柱体对象,显示其表面积。 (圆柱体的表面积=2 * Math.PI * R * R + 2 * Math.PI *R * heigth) (圆柱体的体积=Math.PI *R * R * height) class Circle { protected double r; public double R { get { return r; } set { if ( 【1】 ) { r = value; } else { throw new Exception("半径不能小于等于0"); } } } public Circle() { } public Circle( 【2】 ) { R = r; } public double Perimeter() { return 2 * Math.PI * r; } public double Area() { return Math.PI * r * r; } } class Cylinder 【3】 { private double heigth; public double Heigth { get { return heigth; } set { if ( 【4】 ) { heigth = value; } else { throw new Exception("高不能小于等于0"); } } } public Cylinder() { } public Cylinder(double r,double height) 【5】 { 【6】 = height; } public new double Area() { return 2 * 【7】 + 【8】 * heigth; //要求调用父类的方法 } public double CylinderVolumn() { return 【9】 * heigth; //要求调用父类的方法 } } class Program { static void Main(string[] args) { try { Circle c1 = new Circle(); 【10】 = 5; //设置圆的半径为5 Console.WriteLine("半径为{0}的圆面积是:{1}", 【11】 ); Cylinder c2 = new 12】 ; //创建半径为3,高为7的圆柱体对象 Console.WriteLine("半径为{0}高为{1}的圆柱表面积是:{2}", 【13】 ); } catch (Exception e) { Console.WriteLine( 【14】 ); } Console.Read(); }
多选题
在一个类中,如果需要表示虚成员,可以使用( )关键字 A. override B. virtual C. internal D. privated
简答题
一个类只能继承一个接口。 正确 错误
多选题
以下可以作为接口成员的是 A. 常量 B. 字段 C. 方法 D. 构造函数
简答题
写出下面程序的运行结果: class Parent { private int i; protected int j; private void Display() { Console.WriteLine("父类"); } protected void Setvalue() { j = 1; i = 4; } public void MyDvalue() { Console.WriteLine("i={0},j={1}", i, j); } } class Child : Parent { public int k; public void Display() { Console.WriteLine("子类"); } internal void Change() { Setvalue(); MyDvalue(); } } class Program { static void Main(string[] args) { Parent x = new Parent(); Child y = new Child(); x.MyDvalue(); y.Change(); y.Display(); y.MyDvalue(); y.k = 60; Console.WriteLine("{0}",y.k ); Console.ReadKey(); } }
多选题
能在基类或其派生类中访问的成员的访问修饰符应为 A. abstract B. private C. protected D. public
简答题
public class Father { public int x = 7; public void output() { Console.WriteLine(x); } } public class Son : Father { int x = 9; public void output(int x) { base.output(); Console.WriteLine(this.x); Console.WriteLine(x); Console.WriteLine(base.x); } } class Exclass { public static void Main(string[] args) { Father obfather = new Father(); obfather.output(); Son obson = new Son(); obson.output(5); Console.ReadLine(); } } 以上程序的运行结果是_____________________。(可能有多行)
高级语言程序设计(C#)
章节列表
2 C#初步体验
13
3 C#语言基础
34
4 分支结构程序设计
22
5 循环结构程序设计
22
6 数组
21
7 类与对象
23
8 类的方法
20
9 类的继承和多态
16