我是靠谱客的博主 尊敬白开水,最近开发中收集的这篇文章主要介绍C#基础之字段(Field)、属性(Properties)和索引器(Indexer)字段属性索引器,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前面,我们谈到了类中的一大成员:方法。今天我们来说说类中的另外三种成员:字段、属性和索引器

字段

字段就相当于类中的一个全局变量,用于存储数据。在类中一般定义为private私有的

属性

属性是用来封装字段的,它有get(读)、set(写)访问器,我们可以只设置一个属性的get访问器,也可以只设置它的set访问器。属性的本质是两个方法,我们通过反射就可以看到。因为是基础,所以这里就不再谈论反射的相当内容。属性可以设置字段的只读和只写。也可以从业务角度保护数据的有效性。我们来看一个例子:

class PropertiesDemo
    {
        static void Main()
        {
            Person per = new Person();
            per.Age = 10;
            Console.WriteLine(per.Age);
            per.Age = -1;
            Console.WriteLine(per.Age);
        }
    }
    class Person
    {
        //私有字段
        private int age;
        //属性
        public int Age
        {
            get
            {
                return age;
            }
            set
            {
                if (value < 150 && value > 0)
                {
                    age = value;
                }
            }
        }
    }

image 从结果中我们可以看出,当我们给Age赋值-1的时候是没有成功。从这个小例子中我们就可以体会到属性对字段的封装

索引器

索引器也叫有参属性,但它与属性又有一定的区别。索引器的字体必须用关键字this来定义。后加中括号索引参数

class IndexerDemo
    {
        static void Main()
        {
            Demo de = new Demo();
            de[5] = 10;
            Console.WriteLine(de[5]);
        }
    }
    class Demo
    {
        int[] intarr = new int[10];

        public int this[int i]
        {
            get
            {
                return intarr[i];
            }
            set
            {
                intarr[i] = value;
            }
        }
    }

image

非常的简单的例子哈,相信大家一看就会明白什么是索引器了。

好,今天的课程就到此吧,希望朋友们继续关注!谢谢

转载请注明:小曲 @ CSDN

最后

以上就是尊敬白开水为你收集整理的C#基础之字段(Field)、属性(Properties)和索引器(Indexer)字段属性索引器的全部内容,希望文章能够帮你解决C#基础之字段(Field)、属性(Properties)和索引器(Indexer)字段属性索引器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部