首页 > 其他 > 详细

38属性的种种,只读只写属性、自动属性、静态属性、抽象属性、接口属性

时间:2014-04-27 23:33:07      阅读:808      评论:0      收藏:0      [点我收藏+]

□ 只读属性

public class Example
{
    string name;
    public string Name
    {
        get {return name;}
    }
}

□ 只写属性

public class Example
{
    string name;
    public string Name
    {
        set {name = value;}
    }
}

□ 可读可写属性

public class Example
{
    string name;
    public string Name
    {
        get {return name;}
        set {name = value;}
    }
}

□ 自动属性

public class Example
{
    public string Name {get;set;}
}

自动只读属性:

public class Example
{
    public string Name{get; private set;}
}

自动只写属性:

public class Example
{
    public string Name{private get; set;}
}

□ 静态属性

静态属性对应一个静态字段,通常用在"单例模式"中。"单例模式"构造函数必须是私有的。

public class Example
{
    private static Example instance = new Example();
    private Example(){}

    public static Example GetInstance
    {
        get {return instance;}
    }
}

□ 抽象属性

抽象类和抽象属性。

public abstrace class Person
{
    public abstract string Name{get;set;}
}

抽象属性在子类中实现。

public class Student : Person
{
    private string name;

    public override string Name
    {
        get {return name;}
        set {name = value;}
    }
}

□ 接口属性

public interface IPerson
{
    string Name {get;set;}
}

public class Student : IPerson
{
    private string name;

    public string Name
    {
        get {return name;}
        set {name = value;}
    }
}

参考资料:
A Deep Dive into C# Property

38属性的种种,只读只写属性、自动属性、静态属性、抽象属性、接口属性,布布扣,bubuko.com

38属性的种种,只读只写属性、自动属性、静态属性、抽象属性、接口属性

原文:http://www.cnblogs.com/darrenji/p/3695188.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!