C# 高级编程 对象和类型
来源:互联网 发布:源码包安装apache 编辑:程序博客网 时间:2024/05/22 05:11
类 和 结构 都是创建对象的模板, 都可以用 new 类实例化
结构是值类型,存储在栈上, 类是引用类型 存储在堆上
类可以包含数据成员,函数成员 和 类成员
数据成员: 字段,常量 和 事件 (在发生某些行为时,事件可以让对象通知调用方,客户可以包含事件处理程序来响应事件)
函数成员 提供了 操作类中数据的某些功能 包括方法,属性,构造函数 和 终结器 (finalize)运算符 以及 索引器
ref 迫使 值 以引用方式传递
传递给方法的参数必须初始化
在方法参数 前面加上 out 前缀 就可以不初始化
在调用方法时 也必须加上 ref 或者 out
可选参数, 必须为参数 定义 默认值 并且 必须放在最后
方法重载 : 只需省声明 同名 但 参数个数或类型不同 的方法
两个方法不能仅在 返回类型上有区别
两个方法不能仅根据 参数 声明为 ref 或者 out 来区别
包含 get 和 set 访问器的 字段 就是属性
在get 和 set 访问器 中,至少有一个要有访问级别 。 即 不添加 private和 protect
自动实现属性 , 不能在属性的验证中,验证属性的有效性
public int Age{ get; set; }
通过属性 访问字段,而不是 直接访问字段
如果实现某个方法或 属性 仅是调用另一个方法,或返回一个字段 , 则该方法或属性 肯定是内联的
构造函数:
如果提供了 带参数的构造函数 ,编译器 就不会提供默认构造函数
只有在没有提供任何构造函数 , 编译器才会提供默认构造函数
C# 中 可以认为 finalize 就是 析构函数
在类中,析构函数和 C++ 一样 调用 ~ClassName(){}
但是 在析构函数中 还是 会调用 基类(object) 中 的 finalize 函数
到 page 77 构造函数
- C#高级编程:对象和类型
- C# 高级编程 对象和类型
- C#高级编程读书笔记 - 第三章对象和类型
- C#高级编程学习笔记(二)---对象和类型
- 《C#高级编程》【第三章】对象和类型 -- 学习笔记
- 《csharp高级编程》 学习笔记 第三章 对象和类型
- 红皮书c#高级编程(第6版)_第3章_对象和类型_类
- 红皮书c#高级编程(第6版)_第3章_对象和类型_结构
- 红皮书c#高级编程(第6版)_第3章_对象和类型_部分类
- 红皮书c#高级编程(第6版)_第3章_对象和类型_静态类
- 红皮书c#高级编程(第6版)_第3章_对象和类型_Object类
- 红皮书c#高级编程(第6版)_第3章_对象和类型_扩展方法
- C#高级编程四十七天----集合接口和类型
- C# 对象和类型
- C# 对象和类型
- C#高级编程阅读笔记一(关于值类型和引用类型)
- C#高级编程十六天----匿名类型
- C#高级编程七十天----dynamic类型
- 知乎对「如何提问题?」的答案总结
- 约瑟夫问题概述
- IOS微信端返回重写
- ASCII、Unicode、GBK和UTF-8字符编码的区别联系
- Spring MVC访问页面直接显示源码
- C# 高级编程 对象和类型
- angularjs开发过程,错误集合
- 使用LinkedHashMap进行分数排序
- UE4 C++ Puzzle 模版学习和分析
- An Introduction to DNS Terminology, Components, and Concepts
- 学习笔记
- 如何清除Excel2007中的网格线?
- 第十二周项目三——Dijkstra算法的验证
- nodejs express路由详解