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

    相关文章

    Python ORM神器之SQLAlchemy基本使用完全指南

    《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)

    Java Stream 并行流简介、使用与注意事项小结

    《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

    基于C#实现PDF转图片的详细教程

    《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

    C# LiteDB处理时间序列数据的高性能解决方案

    《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

    GO语言中函数命名返回值的使用

    《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

    使用shardingsphere实现mysql数据库分片方式

    《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

    Java 正则表达式的使用实战案例

    《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

    Python Counter 函数使用案例

    《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

    使用Spring Cache本地缓存示例代码

    《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

    使用Python的requests库来发送HTTP请求的操作指南

    《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送