这些东西是基础中的基础,基本上是本书都会讲这个.但是很多东西到处都有,所以只捡了以下的这些写下来. 关于类型的可见性和可访问性 也就是public,internal这种东西,但是还是有个东西要提一下,那就是友元程序集. 利用System.Runtime.CompilerServices中的InternalsVisibleTo这个特性,使得从友元程序集访问指定程序集的internal类型.(它的作用是通过给定公钥和友元程序集名称来访问internal方法与属性,其实就是为了让别的公司的人访问不了,…
编程语言的基元类型   某些数据类型如此常用,以至于许多编译器允许代码以简化的语法来操纵它们. System.Int32 a = new System.Int32();  // a = 0 a = 1;   等价于: int a = 1; 这种语法不仅增强了代码的可读性,其生成的IL代码与使用System.Int32时生成的IL代码是完全一致的.   编译器直接支持的数据类型称为基元类型(primitive type).基元类型直接映射到Framework类库(FCL)中存在的类型.如C#中,i…
原文:[CLR via C#]6. 类型和成员基础 6.1 类型的各种成员 在一个类型中,可以定义0个或多个以下种类的成员: 1)常量    常量就是指出数据值恒定不变的符号.这些符号通常用于使代码更容易阅读和维护.常量通常与类型关联,而不与类型的实例关联.从逻辑上讲,常量始终是静态成员. 2)字段    字段表示一个只读或可读/写的数据值.字段可以是静态的,这时是类型状态的一部分:字段也可以是实例(非静态)的,这时字段是对象状态的一部分.强烈建议将字段声明成为私有字段,防止类型或对象状态被外部…
在"JavaScript进阶系列05,事件的执行时机, 使用addEventListener为元素同时注册多个事件,事件参数"中已经有了一个跨浏览器的事件处理机制.现在需要使用这个事件处理机制为页面元素注册事件方法. □ 点击页面任何部分触发事件 创建一个script1.js文件. (function() { eventUtility.addEvent(document, "click", function(evt) { alert('hello'); }); }(…
Cp6类型和成员基础 成员 常量:字段(静态字段和实例字段):实例构造器:类型构造器(用于静态字段的构造):方法(静态方法和实例方法):操作符重载(本质是一个方法):转换操作符:属性(本质还是方法):事件(委托):类型(嵌套类): 类型的可见性 public,private,protected,internal,sealed,默认的类是internal. 友元程序集 这部分看看就行了 成员的可访问性 private protected(对应clr是Family),internal(对应clr是a…
6.1 类型的各种成员 在一个类型中,可以定义0个或者多个以下种类的成员: 常量 常量是在编译时设置其值并且永远不能更改其值的字段.使用常量可以为特殊值提供有意义的名称以代替数字文本,以使代码变得更容易阅读及维护.定义常量请使用关键字const.private const Int32 SomeConstant = 1; 字段 字段存储着类满足其设计所必须拥有的数据.例如,表示日历日期的类可能有三个整数字段:一个表示月份,一个表示日期,还有一个表示年份.强烈建议将字段声明为私有字段,防止类型的状态…
6.1 类型的各种成员 6.2 类型的可见性 public 全部可见 internal 程序集内可见(如忽略,默认为internal) 可通过设定友元程序集,允许其它程序集访问该程序集中的所有internal 类型.例如想允许强命名"Microsoft"程序集访问本程序集内的internal类型: using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Microsoft,PublicKey=…
类型的各种成员 类型可以定义以下种类的成员 1 常量 常量是指出数据值恒定不变的符号.这种符号使代码更易阅读和维护.常量总与类型管理,不与类型的实例管理.常量逻辑上总是静态成员. 2 字段 字段表示只读或可读.可写的数据值.字段可以是静态的,这种字段被认为是类型状态的一部分.字段也可以是实例(非静态),这种字段被认为是对象状态的一部分.强烈建议将字段声明为私有,防止类型或对象的状态被类型外部的代码破坏 3 实例构造器 实例构造器是将新对象的实例字段初始化为良好初始状态的特殊方法. 4 类型构造器…
  [C#进阶系列]30 学习总结 [C#进阶系列]29 混合线程同步构造 [C#进阶系列]28 基元线程同步构造 [C#进阶系列]27 I/O限制的异步操作 [C#进阶系列]26 计算限制的异步操作 [C#进阶系列]25 线程基础 [C#进阶系列]24 运行时序列化 [C#进阶系列]23 程序集加载和反射 [C#进阶系列]22 CLR寄宿和AppDomain [C#进阶系列]21 托管堆和垃圾回收 [C#进阶系列]20 异常和状态管理 [C#进阶系列]19 可空值类型 [C#进阶系列]18 特…
本篇主要体验函数参数个数不确定情况下的一个解决方案.先来看一段使用函数作为参数进行计算的实例. var calculate = function(x, y, fn) { return fn(x, y); }; var sum = function(x, y) { return x + y; }; var diff = function(x, y) { return x - y; }; var sumResult = calculate(1, 2, sum), diffResult = calcu…