尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Set和Get访问器and构造函数(析构函数)

Set和Get访问器and构造函数(析构函数)
📅 发布时间:2026/6/19 20:39:37

一、Set和Get访问器

属性:public int Age{get;set},一般不存储数据,可以公开接口,可以在外部进行访问
字段:private int age 字段可以存储数据,一般定义成私有的,目的保证数据的安全性

如果对类里面的字段进行限制、或者拦截处理 ,可以在属性的set和get访问器里面进行条件设置。
set和get访问器 其实就是方法
set访问器:给字段设置值的方法,带一个参数,一般起成value, 把value赋值给字段、
get访问器:获取字段值的 带返回值的 return 字段;

先建立一个类

class People { //1 原始的set和get写法: 写私有的字段 再写公共属性,添加set和get private string name;//私有的字段 public string Name //公共的属性, 目的在外部进行范围 { get { //通过Name获取值 本质获取name的值 Console.WriteLine("11111111111111111"); return name+"视觉67班"; } set { //设置值通过Name 给name进行赋值,value设置的值 Console.WriteLine("222222222222222222"+value); value = "嘉伟"; name = value; } }

如果不想对属性进行任何操作 可以优化写法

private int id; public int Id { get { return id; } set { id = value; } }

同样不对属性进行任何操作的话,最终可以一句话完成

C#提供字段和属性的语法糖的写法,可以简写一句 public bool Sex { get;set; }

Main中进行实验

People p1 = new People(); p1.Name = "嘉伟"; //在属性赋值的时候 set访问器执行了 p1.Age = 20; Console.WriteLine(p1.Name+p1.Age+"-----------");//在获取值的时候 get服务器执行了 //如果想对属性进行设置限制了,可以set和get访问器当中进行设置 People p2 = new People(); p2.Name = "冰冰"; p2.Age = 20; Console.WriteLine(p2.Name + p2.Age + "+++++++");

对属性写限制的话,可以用异常操作

private int age; public int Age { get { return age; } set { if (value<0||value>200) { //throw 抛出,Exception异常 //异常的描述信息 throw new Exception("年龄不可能小于0也不可能大于200"); } age = value; } }

二、构造函数

构造函数目的:创建对象,在构造函数给对象成员赋初始值
默认有一个无参数的构造函数, 类名与方法名一样,不要写有无返回值
也可以定义带参数的构造函数

在无参数的构造函数对属性赋值

public class Girls { public string Name { get; set; } public string Hair { get; set; } //无参数的构造函数 public Girls() { Name = "Baby"; Hair = "长头发"; } }

如代码,不在Main函数中对g1.Name赋值,输出结果就是"Baby"。

Girls g1 = new Girls(); // g1.Name = "沪上阿姨"; Console.WriteLine(g1.Name +"---"); Girls g2 = new Girls(); Console.WriteLine(g2.Name + "---");

有参数的构造函数,在构造函数后()中填写参数

public Aircraft(string n,string t,string c,string com,int s,int all)

调用时,填写实参即可

Aircraft a1 = new Aircraft("波音747","客机","白","波音公司",100,200); Console.WriteLine(a1.Name+a1.Type+a1.Color+a1.Company+a1.Speed+a1.Allcount+a1.PlaneType+a1.Count);

析构函数:

析构函数:当对象不使用时候,会把对象设置为null,再通过GC(垃圾回收机制)进行回收的时候 触发析构函数
析构函数的特点:方法名还是类名 只不过在方法名前加一个~

跟构造函数一样,与类名一样,不过是在前加一个~(波浪号)。

相关新闻

  • vueproject
  • 大数据生态核心组件语法与原理入门
  • OBS Studio直播画质调优实战:从新手到专业的视觉进阶指南

最新新闻

  • 2026 桂林防水补漏靠谱服务商盘点:屋面 / 厨卫 / 外墙 / 地下室渗水维修详解,适配桂北喀斯特山水防潮防水甄选指南 - 宅安选房屋修缮
  • 题解:P16881 [GKS 2022 #D] Image Labeler
  • 微积分基石:从连续、可导到洛必达法则,厘清概念差异与实战边界
  • 实惠的义乌玲珑悦居装修
  • 搬家跨省电动车怎么托运?2026物流平台价格对比 - 快递物流资讯
  • 车路协同技术深度研究:从技术原理到产业落地的系统解构

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号