第3章 C#面向对象编程-1.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 常量字段的声明和访问 [字段修饰符] const 类型 常量名 = 初始化; 声明: 声明的同时必须赋值 访问: 类名.常量名; class Employee { public int id; public string name; protected int age = 20; // 类的常量(数据)声明,必须同时赋值 public const int minAge=2000 ; } Console.Write(Employee.minAge) 程序中不会被改变 常量名通常使用大写 Employee.minAge=3000 强制赋值会发生 编译错误 * 常量字段 常量有如下特性: 必须在声明时初始化,并且不能再修改了 必须能在编译时计算其值,不能从一个变量那里提取值来初始化常量 一个常量可以依赖其他常量,但依赖关系不能循环 常量如果是引用类型,则只能给其赋予null或字符串常量 常量总是静态的,但声明常量时不要求也不允许使用 static 修饰符 既可修饰成员字段也可修饰局部变量 静态字段 static 修饰类的字段时,在一个类中只开辟一块内存空间存储,并在类的所有对象实例间共享,因此static变量也称为类变量。 * class Cat { public string name ; public static string food; } 1 name 2 name 3 name 4 name food 静态字段的访问 static字段不依赖于具体对象,因此直接通过类名访问,而不是通过类的对象实例访问的 非静态变量必须首先实例化类的一个对象,再通过对象访问,因此也称为实例变量 * class Cat { public string name ; public static string food; } static void Main(){ Cat.food = “fish”; //OK C = “Kitty”; //错误 Cat cat1 = new Cat(); = “Kitty”; //OK } 静态字段的值是可以改变的,常量字段的值不能改变 * 只读字段 只读字段只能在 声明字段时赋值 在类的构造函数内被赋值 在其他位置,只读字段的值不能更改 只读字段的声明: [修饰符] readonly 类型 字段名 [= 初始化]; 特点: 只读字段可以是静态(必须显示声明)或实例字段 只读字段的值是在运行时确定的,可以用变量初始化 可以不给只读字段赋值,其值为数据类型的默认值 比较 实例共享的字段 共享字段,使用过程中需要修改 共享字段,但数据是任意类型,运行时确定 * 常量字段 静态字段 静态只读字段 静态字段 静态只读字段 只读字段 例子 * class Employee { public readonly int id; public string name; public int age = 20; public const int minAge = 18; public static string companyName; public void Display( ) { Console.WriteLine(姓名:{0},年龄:{1},公司:{2}, name, age, companyName); // , this.age, EpanyName); } } 只读字段 构造函数可以赋值,对象名.id 常量字段 值不能改变, 类名. minAge 静态字段 值改变,类名.companyName * 面向对象的概念 访问修饰符 类的声明和使用 类的数据成员 小结 基本内容 * 访问修饰符 C#中使用如下访问修饰符: 类成员可以声明为以上5种权限,默认访问修饰符为private 顶层类、结构可以声明为public 或 internal,默认访问修饰符为internal namespace –默认是public,不允许定义public interface,enum ?public 对interface中的成员,可访问性无效(不需要定义) * 课堂练习 name age weight height color Method1、Method2、 Method3

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档