当前位置:首页 > C#学习 > 正文内容

成员访问级别和属性

小道6年前 (2018-08-20)C#学习2991

字段、方法、属性都可以叫做类的成员Member,它们都需要定义访问级别。访问级别的用处在于控制成员在哪些地方可以被访问,这样达到面向对象中“封装”的目的。

几个访问级别:public(任何地方都可以访问);private(默认级别。只能由本类中的成员访问)。还有internal、protected两个级别。

永远不要把字段设置成public。

快速定义属性方法:将光标定位到 字段名上,同时按下:CTRL+R+E。可以快速定义 字段的属性。


惯用法:属性开头字母大写,字段开头字母小写。

只用set或者只用get就可以定义只读或者只写属性(只写的不常见)。

可以为set、get设置访问级别。

允许外部访问的值一定要声明为属性。

字段和属性的区别是什么?属性看似字段、不是字段,可以进行非法值控制,可以设置只读。

    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Person();
            p.Age = 18;//将18传递给value
            p.Name("铁锤");//将字符串"铁锤"传递给string a。
            p.Say();
            Console.ReadKey();
        }
    }
    class Person
    {
        private int age;//字段,名称为小写。一般所有字段全部设置成private局部访问。
        private string name;
        public int Age//属性,名称首字母大写,一般所有属性设置成public全局访问。可以只有set或者get.
        {
            set//设置值
            {
                if (value <100)//判断传递过来的值是否小于100
                {
                    this.age = value;//this表示这个,可省略不写。value表示传递过来的值。
                }
            }
            get//返回值
            {
                return this.age;//返回去的值。
            }
        }
        public string Name(string a)//这个是有返回值的函数。
        {
            if (a != "王钢蛋")//判断传递过来的值是否为:王钢蛋。
            {
                name = a;//不为王钢蛋,则执行。
                return name;//返回名字。
            }
            return "我不叫:王钢蛋。";//否则执行这句。
        }
        public void Say()//函数(或叫方法)和函数用法相同。可以有返回值,也可以无返回值。
        {
            Console.WriteLine("你好!我叫:{0},我今年{1}岁了。", this.name, this.Age);
        }

    }

输出结果:


image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/36.html

分享给朋友:

“成员访问级别和属性” 的相关文章

while语句:要求用户输入用户名和密码,只要不是admin、888888就一直提示要求重新输入。

while语句:要求用户输入用户名和密码,只要不是admin、888888就一直提示要求重新输入。

while语句:要求用户输入用户名和密码,只要不是admin、888888就一直提示要求重新输入。            Console.WriteLine("请输入用户...

函数的ref、out参数

函数的ref、out参数

函数参数默认是值传递的,也就是“复制一份”ref必须先初始化,因为是引用,所以必须先“有”,才能引用,而out则是内部为外部赋值,所以不需要初始化,而且外部初始化也没用。ref应用场景内部对外部的值进行改变,out则是内部为外部变量赋值,out一般用在函数有多个返回值的场所。  ...

面向对象概念

面向对象概念

面向对象不是取代面向过程的。类、对象。“人”是类,“张三”是“人”这个类的对象。类是抽象的,对象是具体的。按钮就是类,某个按钮就是对象。对象可以叫做类的实例(Instance)。类就像int,对象就像10。字段Field(和某个对象相关的变量),字段就是类的状态。人这个类有姓名、年龄、身高等字段。类...

修改密码

修改密码

修改密码。界面上有旧密码、新密码、重复新密码,假设旧密码为888888,两次输入的新密码必须和旧密码不一样,并且两次输入的新密码必须一致。        private void button1_Cl...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。