大学网课搜题引擎
首页
北京学银在线教育科技有限公司
高级语言程序设计(C#)
9 类的继承和多态
题目详情
多选题
以下可以作为接口成员的是 A.
常量 B.
字段 C.
方法 D.
构造函数
查看答案与解析
简答题
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. 事件
多选题
以下关于this关键字和base关键字的说法,不正确的是( ) A. this关键字用于引用类的当前实例 B. base关键字用于从派生类中访问基类的成员 C. 静态成员方法中不能使用this关键字 D. 静态成员方法中能使用base关键字
多选题
下列关于接口的说法不正确的是 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
简答题
一个类只能继承一个接口。 正确 错误
简答题
写出下面程序的运行结果: 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