[学习笔记]c#Primer中文版-类设计、static成员、const和readonly数据成员

本文介绍了类的设计原则,包括操作集、成员函数接口及访问级别等。探讨了静态成员、常量成员(const)与只读成员(readonly)的区别与应用场景,帮助理解类的构成与实现细节。
        类的构成:公开操作和属性;非公开实现细节。
        类的设计:1、确定类能执行的操作集,这些操作将成为类的成员函数。
                            2、确定每个成员函数的接口(返回类型,参数列)。
                            3、确定每个函数访问级别。



         static数据成员在整个程序中只存在唯一一份实体。在class成员函数中访问static成员的语法和访问instance成员的语法完全一致。如果在class本体之外,我们可以通过static成员所隶属的class名称来直接访问。注意:因此不能通过class的一份object来访问static成员。
        每一个class至多只可以定义一个static构造函数,并且不允许增加访问级别关键字,参数列必须为空。
        为了不违背编码规则,通常把static数据成员声明为private,然后通过statci property提供读写访问。
        

        定义:const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。
         const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。
        const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。
        readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。
        readonly 关键字与 const 关键字不同。const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly 字段可用于运行时常数。

转载于:https://www.cnblogs.com/pfengk/archive/2006/01/11/315050.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值