C#屬性使用淺析

2023-11-23 19:30

本文主要是介绍C#屬性使用淺析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

程序员大智慧

</div><!--end: blogTitle 博客的标题和副标题 -->
<div id="navigator">
新随笔
  • 联系
  • 订阅
  • 管理
  • 	<div class="blogStats"><span id="stats_post_count">随笔 - 
    


    文章 -

    评论 -
    0

    	</div><!--end: blogStats -->
    </div><!--end: navigator 博客导航栏 -->
    

    C#属性的使用

            </h1><div class="clear"></div><div class="postBody">
    

    1、属性的作用:保护字段,对字段取值与赋值进行限定

    2、属性的使用:

    _name(属性名)
    public [对应字段类型] 属性名Name
    {
    get{return _name;}
    set{_name=value;}
    }

    3、字段和属性的命名格式:

    字段的命名方式一般采用:_cameCase
    字段的命名方式一般采用:PascalCase

    4、有了属性以后,往往通过属性去访问字段。属性通常声明为public,字段通常声明为private。在外部访问类中的字段,都是通过属性来实现。get可对取值进行界定,set可对赋值进行界定,通常我们将get和set称为访问器。

    Clerk.cs:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    namespace CSharp属性的使用
    {
    class Clerk
    {
    private string _name;//字段
    public string Name//属性
    {
    get {return _name;}
    set { _name = value; }
    }
    private char _gender;//字段
    public char Gender//属性
    {
    get {
    if (Gender != '男' || Gender != '女')
    _gender = '男';
    return _gender;
    }
    set{
    _gender = value;//value是内置的变量
    }
    }
    private int _age;
    public int Age {
    get { return _age; }
    set {
    if (value < 0 || value > 120)
    value = 0;
    _age = value; 
    }
    }
    public string _department;
    public int _workyears;
    public void Write() {
    //可加this
    Console.WriteLine("{0}{1}{2}{3}{4}",_name,Gender,_workyears,Age,_department);
    // Console.WriteLine("{0}{1}{2}{3}{4}", this._name, this._gender, this._workyears, this._age, this._department);
    }
    }
    }

    Program.cs:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    namespace CSharp属性的使用
    {
    class Program
    {
    static void Main(string[] args)
    {
    Clerk zsClerk = new Clerk();
    zsClerk.Name = "张三";
    zsClerk.Gender='男';
    zsClerk.Age= 25;
    zsClerk._department="人力部";
    zsClerk._workyears = 10;
    zsClerk.Write();
    Console.ReadKey();
    }
    }
    }

    5、属性的分类

    属性分为4种,
    1)既读又写:同时包含get和set
    2)只读:只包含get
    3)只写:只包含set
    4)自动属性

     

    分类: C#基础
    <div id="blog_post_info">
    
    好文要顶 关注我 收藏该文
    程序员大智慧
    关注 - 0
    粉丝 - 0
    +加关注
    0
    0
    <div class="clear"></div>
    <div id="post_next_prev"><br>
    <a href="https://www.cnblogs.com/lwjcn/p/8484494.html" class="p_n_p_prefix">» </a> 下一篇:    <a href="https://www.cnblogs.com/lwjcn/p/8484494.html" title="发布于 2018-02-28 16:49">C#构造函数里的base和this的区别,父类和子类构造函数执行顺序</a>
    
    posted @ 2018-02-28 16:28  程序员大智慧  阅读( 1875)  评论( 0)  编辑  收藏
    </div><!--end: topics 文章、评论容器-->
    
    刷新评论 刷新页面 返回顶部
    【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
    【推荐】阿里云双11返场来袭,热门产品低至一折等你来抢!
    【活动】开发者上云必备,腾讯云1核4G 2M云服务器11元/月起
    【推荐】百度智能云岁末感恩季,明星产品低至1元新老用户畅享
    【活动】京东云限时优惠1.5折购云主机,最高返价值1000元礼品!
    【推荐】史上最全python数据爬取面试问答合集 | 开发者福利
    【推荐】精品问答 | 2020年Java面试必备题集
        <div id="google_ads_iframe_/1090369/C2_0__container__" style="border: 0pt none;"><iframe id="google_ads_iframe_/1090369/C2_0" title="3rd party ad content" name="google_ads_iframe_/1090369/C2_0" width="468" height="60" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" srcdoc="" style="border: 0px; vertical-align: bottom;" data-google-container-id="2" data-load-complete="true"></iframe></div></div>
    </div>
    <div id="under_post_kb">
    
    最新 IT 新闻:
    · 我国成功发射银河航天首发星
    · 不只是G1和G2:巨型黑洞人马座A*再发现四个类似神秘天体
    · 作价2亿美元被苹果收购,这家AI芯片公司能让Siri更聪明吗?
    · 台积电、三星争霸2nm工艺:能做出来,但可能没人用得起
    · 商汤科技发布迄今最大人脸检测数据集,绝杀Deepfake!
    » 更多新闻...
    <div id="sideBar"><div id="sideBarMain">
    
    <div id="profile_block">昵称:<a href="https://home.cnblogs.com/u/lwjcn/">程序员大智慧</a><br>园龄:<a href="https://home.cnblogs.com/u/lwjcn/" title="入园时间:2016-07-20">3年5个月</a><br>粉丝:<a href="https://home.cnblogs.com/u/lwjcn/followers/">0</a><br>关注:<a href="https://home.cnblogs.com/u/lwjcn/followees/">0</a><div id="p_b_follow">
    

    +加关注

    		<div id="blog-calendar" style="">
    
    < 2020年1月 >
    293031 1 2 3 4
    5 6 7 8 9 10 11
    12 13 14 15 16 17 18
    19 20 21 22 23 24 25
    26 27 28 29 30 31 1
    2 3 4 5 6 7 8
    		<div id="leftcontentcontainer"><div id="blog-sidecolumn">
    

    我的随笔

  • 我的评论

  • 我的参与

  • 最新评论

  • 我的标签

      随笔分类

              </h3><ul><li>
      
      C#基础(5)
                          </li></ul></div><div id="sidebar_postarchive" class="catListPostArchive sidebar-block"><h3 class="catListTitle">
      

      随笔档案

              </h3><ul><li>
      
      2018年3月(2)
                          </li><li>
      
      2018年2月(3)
                          </li></ul></div>
      
      	</div><!--end: sideBarMain -->
      </div><!--end: sideBar 侧边栏容器 -->
      <div class="clear"></div>
      </div><!--end: main -->
      <div class="clear"></div>
      <div id="footer"><!--done-->
      

      Copyright © 2020 程序员大智慧

      Powered by .NET Core 3.1.0 on Linux

      </div><!--end: footer -->
      
      C#屬性使用淺析## C#屬性使用淺析

    这篇关于C#屬性使用淺析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/420213

    相关文章

    C++ Sort函数使用场景分析

    《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

    Java String字符串的常用使用方法

    《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

    Pydantic中Optional 和Union类型的使用

    《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd

    Vue3使用router,params传参为空问题

    《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

    使用Python自建轻量级的HTTP调试工具

    《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建

    使用Python实现一键隐藏屏幕并锁定输入

    《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

    使用Python开发一个简单的本地图片服务器

    《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

    Linux中的计划任务(crontab)使用方式

    《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

    kotlin中const 和val的区别及使用场景分析

    《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

    C++变换迭代器使用方法小结

    《C++变换迭代器使用方法小结》本文主要介绍了C++变换迭代器使用方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、源码2、代码解析代码解析:transform_iterator1. transform_iterat