当前位置: 首页 > wzjs >正文

家用电器网站建设东莞网站建设排名

家用电器网站建设,东莞网站建设排名,做led视频好的网站,可以在自己家做外卖的网站VS Code 新建上位机项目---C#面向对象编程 1 类与对象1.1 类的构成1.2 对象2 类的属性2.1 类的属性与类的字段2.2 类属性的拓展2.3 对象类型的属性3 构造方法(初始化)3.1 默认构造方法 无参数构造方法3.2 有参数构造方法3.3 构造方法相互调用( :this() )构造方法重载3.4 对…

VS Code 新建上位机项目---C#面向对象编程

  • 1 类与对象
    • 1.1 类的构成
    • 1.2 对象
  • 2 类的属性
    • 2.1 类的属性与类的字段
    • 2.2 类属性的拓展
    • 2.3 对象类型的属性
  • 3 构造方法(初始化)
    • 3.1 默认构造方法 无参数构造方法
    • 3.2 有参数构造方法
    • 3.3 构造方法相互调用( :this() )构造方法重载
    • 3.4 对象初始化器
  • 4 对象实例化方法
  • 5 垃圾回收机制(GC)
  • 6 静态方法(static)
  • 7 params关键字
  • 8 泛型集合
    • 8.1 基于索引的泛型集合 LIst<T>
      • 8.1.2 List<>的基本语法
      • 8.1.2 将List<>作为对象容器
    • 8.2 基于"键--值"对的泛型集合 Dictionary<k.v>

1 类与对象

1.1 类的构成

类通俗来讲,就是将目标对象进行分类。如何分类?
静态属性:是对象的基本特征信息。
动态方法:是描述对象能做什么,如何做。
类的规范:

访问修饰符 class 类的名称
{
//静态字段部分
//静态属性部分
//私有字段(一般不用)
//动态方法部分
}

一个类可以只有属性、只有方法、也可以属性、方法全部都有。不建议添加只有字段的类。

先新建一个空白项目,然后右键项目名称,添加,新建项,选择类,重新修改类名,点击添加;
在这里插入图片描述
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace Thinger.ConsoleAndOperation
{/// <summary>/// 设备类/// </summary>public class Equipment //访问修饰符 class 类的名称{public int EquipID { get; set; }//属性1:设备ID//输入prop连续Tab两次可以自动复制上一行的代码结构public int EquipName { get; set; }//属性2:获取设备名称public double Pressure { get; set; }//属性3:压力public DateTime Collecttime { get; set; }//属性4:获取更新时间public void ShowInfo()//属性5:方法 显示信息{Console.WriteLine($"设备ID:{EquipID}");}}
}

tips:
【1】访问修饰符

public class Equipment //访问修饰符 class 类的名称

访问修饰符不写的时候,默认访问修饰符是internal,表示只能再当前程序集内部使用该类。public可以再程序集外面通过调用命名空间的方式使用。类的名称首字母要大写。

【2】get与set是一个方法。主要执行过程是先将对象的值set给类,类里面通过get读取这个数然后执行语句,在对象的位置显示。所以说get与set是方法, public int EquipID才是属性。

 public int EquipID { get; set; }//属性1:设备ID

找到路径下的ildasm.exe文件,双击运行,
在这里插入图片描述
右键程序集,选择再文件资源管理器中打开文件夹,C:\Users\wang\Desktop\Thinger.ConsoleAndOperation\Thinger.ConsoleAndOperation\bin\Debug,找到debug下面的.exe文件,将其直接拖到运行窗口ildasm.exe中,可以看到get与set的底层逻辑。查看完毕后,记得关闭ildasm.exe文件,否则会影响程序运行。
在这里插入图片描述
在这里插入图片描述

【3】类只是规定了,它能存储什么类型的数据、能够完成什么任务,但是没有具体的数据。类本身也是一种数据类型,有点像是西门子下位的UDT或者WINCC的结构体。他只有后缀,并不是一个完整的变量,因此需要对象来作为前缀,这样前缀+后缀就构成了一个完成的变量。所以想让类有具体的内容需要对象来进行填充。

1.2 对象

对象就是用类做模板,给类的属性赋值。

使用new关键字定义,会将类调到内存中,从而变成对象的实例。

类名 对象名 = new 类名();
对象名.属性 = 值;
对象名.方法(参数...)

回到progrpm.cs。

using System;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Xml.Linq;namespace Thinger.ConsoleAndOperation
{class Program{static void Main(string[] args){Equipment Equip = new Equipment();//根据类构建对象Equip.EquipID = 101;//给对象(Equip)的类(Equipment)中的属性(ID)赋值Equip.EquipName = "空气压缩机";//Equip.Pressure = 2.5;//下位机读取的数据Equip.Collecttime = Convert.ToDateTime("2025-2-24");//Equip.ShowInfo();//显示信息Equipment Equip2 = new Equipment();//根据类构建了一个对象Equip2.EquipID = 102;//给对象(Equip)的类(Equipment)中的属性(ID)赋值Equip2.EquipName = "空气压缩机";Equip2.Pressure = 2.6;//下位机读取的数据Equip2.Collecttime = Convert.ToDateTime("2025-2-24");Equip2.ShowInfo();//显示Console.ReadLine();//调用控制台}        }
}

在这里插入图片描述

2 类的属性

2.1 类的属性与类的字段

【1】字段,又称为“成员变量”
第一、目的:字段是为类的内部方法,或者方法之间传递数据使用,强调对内使用。交修饰:字段一般用private修饰,很少用public。
第三、读写:字段可以读写均可,也可以用readonly限制为只读,但是不能添加业务。
【2】属性
第一、目的:属性是对外提供数据访问、本地不保数据,强调对外使
第二、修饰:属性都是public,从来不用private。
第三、读写:属性可以轻松的实现单独读写控制,并且可以添加任意需要的业务逻辑。
第四、强制:dgv列表必须强制使用属性,不能使用公有字段。

namespace Thinger.ConsoleAndOperation
{/// <summary>/// 设备信息类/// </summary>public class Equipment2{public int EquipID { get; set; } //属性可读可写,外部可以调用// public int EquipID;//公用字段,不要使用private int _equipid = 0;//私有字段public int EquiplD//使用私有字段进行逻辑判断,只能在当前类使用{get { return _equipid; }set { if (value < 100) _equipid = 100; else _equipid = value; }}private string equipname= string.Empty;//私有字段public string EquipName { get { return equipname; }set { equipname = value; }}//只读属性public double Pressure { get{double result = 2.5;return result;}}public DateTime Collecttime { get; set; }public void ShowInfo(){Console.WriteLine($"设备ID:{EquipID},设备名称:{EquipName}");}}
}

2.2 类属性的拓展

【1】类属性直接初始化

public int EquipID { get; set; } = 101;//直接赋值初始化

【2】类属性表达式
在这里插入图片描述
补充:使用属性的时候,有的地方也可以用方法代,但是设计的时候,如果你侧重的是属性(比如需要在dgv中显示)就要用属性,如果是单独的行为,可以用方法。

2.3 对象类型的属性

类是一种数据类型(引用类型),类中的属性和变量(局部变量和成员变量)也可以是类,开发中还会出现集合对象或者数组对象类型。

新建一个新的类,命名Equipment4表示设备,再新建一个类命名Sensor表示传感器,访问修饰符均选择public。

在Sensor类中:

 public  class Sensor{public int SensorNO { get; set; }//传感器编号public double SensorTemp { get; set; }//传感器温度}

在Equipment4类中:

public Sensor CurrentSensor { get; set; }//一个设备只有一个传感器
public Sensor[] CurrentSensorArray { get; set; }//一个设备有多个传感器,这就是对象类型的属性

在对象Program中:

static void Test3()
{
//一个对象Equip4设备其类 Equipment4包括CurrentSensor属性,这个属性又作为对象包括SensorNO和SensorTemp属性Equipment4 Equip4 = new Equipment4();//定义新对象Equip4其属性类是Equipment4Sensor sensor = new Sensor();//定义对象属性sensor其属性类是Sensorsensor.SensorNO = 1; //给对象属性ID赋值sensor.SensorTemp = 26.6; //给对象属性TEMP赋值Equip4.CurrentSensor = sensor;//给对象的CurrentSensor属性赋值Console.WriteLine(
http://www.dtcms.com/wzjs/197542.html

相关文章:

  • 网站上的图片怎么做seo网站排名优化教程
  • 泉州洛江住房和城乡建设局网站软文媒体发稿平台
  • 网站制作公司哪里好网站排名优化培训哪家好
  • 成都网站建设116web网站seo优化排名
  • 网站上传视频怎么做百度上如何发广告
  • 无锡自助建站网站免费建站网站大全
  • 政府网站设计的不足武汉seo群
  • 上海公司网站建设哪家好免费网站搭建平台
  • 骨骼型的网站手游免费0加盟代理
  • 怎么做网站的地图页seo优化服务公司
  • 杭州做网站哪家好百度seo优化系统
  • 长沙网页设计培训价格单页面seo搜索引擎优化
  • 杭州做宠物网站的公司哪家好杭州网站seo外包
  • wordpress又拍云cdn伪静态西安网站seo价格
  • 网站制作导航栏怎么做微信指数
  • 网站怎么做充值提现功能电话营销技巧和营销方法
  • 中山网站建设中山百度指数快刷软件
  • 网站标题的关键字怎么写查收录
  • 网站的关键词库怎么做短视频seo优化排名
  • 彩票做网站犯法吗国内seo排名分析主要针对百度
  • 深圳网站建设 乐云践新开网店3个月来亏了10万
  • 江门网站建设junke100四川seo排名
  • 怎么找上海网站建设南京网站设计优化公司
  • 企业如何创建品牌网站seo报告
  • 专业电子科技网站建设宁波网站推广
  • 网站建设做什么会计科目宁波seo公司推荐
  • 学校网站建设板块分析百度明星人气排行榜
  • 免费发布活动的平台湖北搜索引擎优化
  • 制作网页版权怎么修改长沙 建站优化
  • wordpress播放网盘视频营销排名seo