面向对象基础(5)——属性与修饰符

今天在看大话设计模式的时候,看到了属性与修饰符这一块。这次才是对属性有了一个进一步的了解。


修饰符

Public 允许其他任何类来访问

Private只允许同一类中的成员访问

Protect访问仅限于包含类或从包含类派生的类型。只有包含该成员的类以及继承的类可以存取

以上三种是访问修饰符,也是我们经常用到的。如果想了解更多请点击:修饰符

属性:

1.什么是属性(What)

属性是一个方法或者一对方法,但是在调用它的代码来看,属性是一个字段(字段是储存类要满足其      设计所需要的数据,字段是与类相关的变量)。

通常在一个类中,字段大多是private,即私有变量;而属性都是Public,即公有变量。

2.属性有什么用处。(How)

如下一段小代码

 public class Cat            //定义一个Cat类
    {
        private int shoutNum = 3;   //声明一个内部私有字段,默认值为3
        public int ShoutNum         //ShoutNum为一个Public的属性。其有两个方法
                                    //一个是get:表示外界调用时可以得到这个值
                                    //一个是set:表示外界可以给内部的shoutNum赋值
        {
            get
            {
                return shoutNum;
            }
            set 
            {
                shoutNum  =value;   //set 没有显示设置参数,但是它有一个隐士参数  用关键字value表示
            }


同时将变量写成私有,是为了起到控制外界对此变量的修改(赋值),也就是说我可以让你调用这变 量,  你也可以去给他 赋值,但是这就需要有一个度。我  为了自己的安全要对你的操作进行一定的限制。


 public int ShoutNum         //ShoutNum为一个Public的属性。其有两个方法
                                    
        {
            get
            {
                return shoutNum;
            }
            set 
            {
                if(value <=10)              //控制叫声的次数,最多只能叫10次
                    shoutNum =value;
                else 
                    shoutNum =10;
            }
        }


就好比我的身份证号,身份证号只有我自己知道(Private ID)。如果别人想知道必须要询问(publicID),  得到我的同意才可以得到身份证号(get),但是我的  身份证号是只读的,别人不可以更改的(没有set方法 此时外 界不能给我的证件号赋值)。这样以来就有利于保护我的个人信息不被泄露。做到了安全性。

访问修饰符定义访问权,限制权属性对于类而言就是一个变量,一个方法,通过这个方法得到变  量。 两者都是有利于增强类的封装性,安全性。




你可能感兴趣的:(面向对象基础(5)——属性与修饰符)