【C#】【平时作业】习题 您所在的位置:网站首页 举例说明什么是属性 【C#】【平时作业】习题

【C#】【平时作业】习题

2024-05-11 12:43| 来源: 网络整理| 查看: 265

一、概念题

1. 举例说明什么是类,什么是对象,并说明类与对象的关系?

类:具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。

对象:对象是人们要进行研究的任何事物,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

例如:狗类。大黄狗是狗类的其中一个对象

类与对象的关系就如模具和铸件的关系,类的实例化的结果就是对象,对象的抽象就是类。

类描述了一组有相同特性(属性)和相同行为的对象。

2. 什么是类的字段,字段有何作用

字段又称为"成员变量",一般在类的内部做数据交互使用,一般使用private使用

字段的通俗理解:字段就好比我们的个人财产,只供我们自己使用,所以一般是private修饰

作用:限制对象的属性或方法可访问的范围(类的内部,类的外部)

类型: private(私有的:外部不可见) public(共有的:外部可见的)

字段命名规范:字段命名一般采用camel命名法

添加标准:一个类中究竟需要添加几个字段,根据程序编写过程的需要决定

3. 举例说明什么是类的属性,属性有何作用?

属性其实是外部访问私有字段的入口,属性本省不保存任何数据

给属性赋值,其实是给属性指向的私有字段赋值

读取属性值,其实是获取属性指向的私有字段值或其它值

作用:在面向对象设计中主要使用属性描述对象静态特征

要求:一般采用Pascal命名法,数据类型和字段一致,使用public修饰

举例

# 字段 private int studentId; # 属性 public int StudentId { get {return student} set {studentID = value} }

4. 举例说明C#中如何创建类的方法,方法的基本格式是什么?

[修饰符] 返回值类型 方法名 (参数类型 参数, 参数类型 参数) { // 方法体 //(返回值) } /// /// 获取圆的直径 /// /// public double getDiam() { return 2 * _radius; }

5.public , private, protect, internal有何区别?

public 关键字是类型和类型成员的访问修饰符。公共访问是允许的最高访问级别,对访问公共成员没有限制。 protected 关键字是一个成员访问修饰符。受保护成员在它的类中可访问并且可由派生类访问。= private 关键字是一个成员访问修饰符。私有访问是允许的最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的。 internal 关键字是类型和类型成员的访问修饰符。只有在同一程序集的文件中,内部类型或成员才是可访问的。

6. 举例说明,什么是C#程序设计类的封装?

封装:将事物拥有的属性和动作隐藏起来,只保留特定的方法与外界联系。

例如,封装一个Circle类

class Circle { //字段 public const double PI = 3.14; private double _radius; private double _centerX; private double _centerY; //属性 public double Radius { get => _radius; set => _radius = (value > 0 && value _centerX; set => _centerX = (value > 0 && value _centerY; set => _centerY = (value > 0 && value _length=(value > 0 && value _length; } public double Width { set => _width = (value > 0 && value _width; } //属性getter public double getLength() { return _length; } public double getWidth() { return _width; } //属性setter public void setLength(double length) { if (length 50) { length = 50; } _length = length; } public void setWidth(double width) { if (width 50) { width = 50; } _width = width; } //功能方法 /// /// 将长方形的长和宽放大一定倍数 /// /// /// public bool magnify(double factor) { Checklw(); this._length = _length * factor; this._width = _width * factor; if (this._length == _length * factor && this._width == _width * factor) { return true; } else { return false; } } //计算长方形面积 public double ComputeArea() { Checklw(); return this._length * this._width; } /// /// 计算长方形周长 /// /// public double ComputePerimeter() { Checklw(); return (this._length + this._width)*2; } //要求长必须大于款 public void Checklw() { //纠正宽大于长的错误 if (_length < _width) { double temp = _length; _length = _width; _width = temp; } } } Rectangle cfx = new Rectangle(2222,333); cfx.setLength(2); cfx.setWidth(3); lb1.Text += "长方形长为:"+cfx.getLength()+" | 长方形宽为:"+cfx.getWidth()+"\n"; lb1.Text += "周长为:" + cfx.ComputePerimeter().ToString() + "\n"; lb1.Text +="面积为:" +cfx.ComputeArea().ToString()+"\n";

2. 设计圆,并使用该类

//字段 public const double PI = 3.14; private double _radius; private double _centerX; private double _centerY; //属性 public double Radius { get => _radius; set => _radius = (value > 0 && value _centerX; set => _centerX = (value > 0 && value _centerY; set => _centerY = (value > 0 && value


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有