C#基础--类

来源:互联网 发布:淘宝查重会泄露论文吗 编辑:程序博客网 时间:2024/05/31 19:29
类是C#中最重要、最常见的类型
一个类对象中,主要包括 字段,属性,方法。不过除此之外,在类类型中还可以定义嵌套类,也可以定义一个常量。
对于一个没有任何编程知识的初学者而言,也许还应介绍一下常量与变量。不过从它们的名字就可以非常清晰地辨明二者的区别,常量其值是不可改变的(比


如圆周率“π”)声明一个常量要用到关键字const 例如:
const double PI = 3.1415926;
而变量的值则是可以修改,除非该变量是只读的(用到关键字 readonly)。
readonly double PI = 3.1415926;


字段:
类的字段其实也是变量可以利用public(公共的),internal(内部的),protected(受保护的),private(私有的)来修饰它。
不过,我建议如非特殊情况,不要将字段修饰为public。
因为,根据”对象封装”的原则,应尽量避免将一个类型的字段以公有方式提供给外部。
毕竟,对于字段而言,对象对它的控制非常弱,一旦公开在外,则调用者可以比较容易的对其进行操作,尤其是写操作,从而可能会导致错误。例如,我们为


前面定义的Person类增加一个age(年龄)字段,假如我将其定义为public字段,如下所示:
public int Age;
那么调用者可能会将Age的值设为负数:
Person person = new Person();
person.age = -5;


属性:
所谓“属性”,很大程度可以看作是对“字段”的一种封装,它利用一种被称为“get/set访问器”分别控制对字段的读写操作,并暴露一个属性值,如Age属


性:
private int age;
public int Age
   {
      get { return age; }
       set { age = value; }
   }
简写private string Age{ get; set; }
下面是完整的写法
private int age;
        public int Age
        {
            get { return age; }
            set 
            { 
                if(age>18 && age<80)
                {
                    age = value;
                }
                 
            }
        }
我们在将字段封装为属性时,可以只设置它的get访问器或者set访问器,这样这个属性就是只读属性,或者只写属性了。这样显然更有利于对象的封装。毕竟


对于公共字段而言,我们最能可以控制它为只读(设置为readonly),却无法设置为只写。


方法
定义一个类的方法,必须包括五个要素:方法修饰符,方法名,返回类型,参数,以及方法体,例如Move方法:            
public void Move()
    {
          Console.WriteLine("移动的方法!");
     }
public即为我们的方法修饰符,它代表了该方法能被访问的级别。当然,修饰的方法的关键字还包括static,virtual,abstract等
方法名自然是Move了,自然属于方法的名字。
返回类型(这里返回类型为空)
参数(这里不含参)
方法体则是花括号中的内容。


构造函数(无参构造函数和含参构造函数)是特殊方法
class Person
    {
        private string name { get; set; }
        //构造函数--无参构造函数
        Person()
        {


        }
        //含参构造函数
        Person(string name)
        {
            this.name = name;
        }
    }









0 0
原创粉丝点击