| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 605 人关注过本帖
标题:属性和实例变量的问题
取消只看楼主 加入收藏
黄昏黄昏
Rank: 2
等 级:论坛游民
帖 子:49
专家分:41
注 册:2013-1-10
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:0 
属性和实例变量的问题
例如:
程序代码:
public class GradeBook
{        //有无声明实例变量都可以正常调用属性的get访问方法
    private string courseName;

    public string CourseName { get; set; }

    public override string ToString()
    {
        return CourseName;
    }
}

namespace ProgramTest
{
    class Program
    {
        static void Main(string[] args)
        {
            Test test = new Test();

            //调用对象test属性的set访问方法
            test.Str = "Programming";

            //间接调用对象test属性的get访问方法
            Console.WriteLine(test);
        }
    }
}


在类里声明一个属性体,而有没有相应的实例变量都可以正常调用属性的set和get访问方法,这样是不是说明CourseName仅仅表示用于操作属性的一个变量,实际上和实例变量courseName之间没有任何数据的交换?

这样是不是就说明实例变量可有可无,只是属性则是必要的?

可不可以这样认为:实例变量只是用来直观地列出所在类所具有的的属性,让阅读代码的人知道这个类有哪些属性,但并不具有实际意义的值(例如,即使在Main里设置CourseName为“Programming”,但实例变量courseName的值并不是“Programming”,而是引用类型的默认值NULL),真正的属性操作是通过属性体方法的访问来完成的?

初学C#,问题不少,主要是不明白实例变量和属性体之间有没有联系,如果有又是怎么联系的,大家帮帮忙,谢谢啦!

[ 本帖最后由 黄昏黄昏 于 2013-9-20 23:49 编辑 ]
2013-09-20 23:47
快速回复:属性和实例变量的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051261 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved