28.C# 类基础字段与属性
摘要
字段与属性是类中最常见的成员之一,都是一个类的数据项成员。
正文
类定义的具体语法形式如下。
internal class Material
{
}internal 类的访问修饰符 class 修饰符 Material类名
字段
在项目中创建一个Material 类
public class Material
{
    private string name;//字段
    private int qty;//字段
}class Program
{
    static int i;
    static void Main(string[] args)
    {
        Console.WriteLine(i);
    }
}这一段可以看到在类级别的变量的i给了一个默认值0
class Program
{
    static void Main(string[] args)
    {
        int i;
        Console.WriteLine(i);
    }
}在方法中的变量C#不会给默认值 ,所以这段会出错。
public class Material
{
    private string name;//字段
    public int qty;//字段
}static void Main(string[] args)
{
    Material material = new Material();
    material.name = "6ES7";//由于在类中是private,所以不能有访问
    material.qty = 100;//public 就可以
}属性是什么?
属性是对现实实体特征的抽象,提供对类或对象的访问。
public class Material
{
    private string name;//字段
    //定义了一个Qty的属性
    private int _qty = 0;
    public int qty
    {
        get
        {
            return _qty;
        }
        set
        {
            if(value<0 || value > 100)
            {
                throw new ArgumentException("数量不在范围内!");
            }
            _qty = value;
        }
    }
    //简单定义
    public string location { get; set; }
}其中get是读,set是写,也可以申明只读,只写的属性
static void Main(string[] args)
{
    Material material = new Material();
    material.qty = 101;//由于qty>100,会出现异常
}- 属性可以将字段与属性绑定在一起
 - 可以避免非法数据访问
 - 保证数据的完整性
 
字段与属性区别
- 字段一般用在类的内部使用,属性一般供外部类访问
 - 属性相当于是给字段加了一个保护套,为字段加了两套方法
 - 字段的使用场景:与类或者对象关系密切,建议使用private修饰,一般可以用_开头命名。
 - 属性的使用场景:对字段进行封装,提供get/set关键字,进行访问。
 
相关文章
- Spring Boot中对接Twilio以实现发送验证码和验证短信码
 - Spring Boot 3.5:这次更新让你连配置都不用写了,惊不惊喜?
 - Spring Boot+Pinot实战:毫秒级实时竞价系统构建
 - SpringBoot敏感配置项加密与解密实战
 - SpringBoot 注解最全详解,建议收藏!
 - Spring Boot 常用注解大全:从入门到进阶
 - SpringBoot启动之谜:@SpringBootApplication如何让配置化繁为简
 - Springboot集成Kafka原理_spring集成kafka的原理
 - Spring Boot中@Data注解的深度解析与实战应用
 - 大佬用1000字就把SpringBoot的配置文件讲的明明白白!
 
