2012年12月16日
摘要: 字符串在20121215项目中字符串是不可变的字符串的恒定性对象中的Equals方法比较的时地址,而在字符串中比的是字符串的内容字符串拘留池创建字符串之前会先在字符串拘留池找,如果找到,则会指向找到的字符串,没有则新建一个,如果是通过变量相加则会直接新建字符串。如果直接赋值创建字符串的鱼通过变量相加的字符串相同也不会指向通过变量相加的字符串,因为通过变量相加的字符串是随时可变的 //字符串是不可变的。 //字符串的恒定性... string str1 = "刘德华"; string str2 = "刘德华"; string str3 = "刘& 阅读全文
posted @ 2012-12-16 00:33 陈谨 阅读(243) 评论(0) 推荐(0) 编辑
摘要: Foreach原理如果要被foreach遍历,就必须要实现IEnumerable接口接口里面只有一个IEnumerator Get Enumerator()方法但这个方法的返回值要是一个实现了IEnumerator接口的对象IEnumerator接口中有一个属性 2个方法需要实现MoveNext方法是用来将指针变量下移,并且判断当前位置是否有值 如果有值返回true否则falseCurrent属性是用来获取当前指针的位置的值因为取值是在枚举器中取的,所以要将数组对象传递到枚举器中 在构造函数View Code 1 using System; 2 using System.Collecti... 阅读全文
posted @ 2012-12-16 00:30 陈谨 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 集合ArrayList1、 要引用system.Collections2、 ArrayList内部其实就是用1个object数组来存储数据3、 在这个类的静态构造函数中实例化了这个object’数组,长度为04、 如果第一次往这个动态数组增加元素,那么就把数组的程度为45、 如果是第二次以后扩容 那么数组的长度就是原来的2倍6、 ArrList是用object数组来存储来存数组,所以我们取值的时候 取出来的变量类型是一个object类型 需要类型转换7、 增加数据 Add方法8、 Count属性表示ArrList集合中有效元素的个数9、 Capacity属性代表items数组的长度10、 实现 阅读全文
posted @ 2012-12-16 00:26 陈谨 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 虚方法 子类可以重写也可以重写抽象方法被abstract修饰的方法叫做抽象方法,子类必须要重写父类的抽象方法,除非子类也是抽象类抽象类可以继承,如果子类继承抽象类,子类要实现父抽象类的所有抽象方法(包括父父抽象类等的抽象方法),抽象方法实现至少一次就可以啦,可以在抽象类里面是想父抽象类的抽象方法,重写之后可以再重写,调用相对最后一个抽象方法不能有方法体抽象方法必须在抽象类中快捷ctrl+. 或者在右键抽象类不能实例化,抽象类中的抽象方法没有实现,调用会出错抽象类可以与有非抽象成成员子类必须要重写的时候,每个子类的的实现方法不一样就用就用抽象方法如果要实例化父类就用虚方法抽象方法不能是priva 阅读全文
posted @ 2012-12-16 00:19 陈谨 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 接口1、接口本质就是一个特殊的抽象类2、定义规范。光说不做3、默认就是public abstract,在接口中定义方法的时候不能写访问修饰符4、接口中不能定义字段5、接口不能包含构造函数(构造函数一般是用来初始化字段的值,而接口中是没有字段的,所以不能包含结构函数)6、接口中也可以定义属性(属性本质就是方法,而在编译的时候这个属性的get set 块变成抽象方法等着类区实现,不会生成字段)7、接口是不能被实例化的,实现了接口的类必须要实现接口中所有的成员接口与抽象类的区别8、抽象类中可以有非抽象成员,接口只能定义方法属性 索引器 事件9、什么时候用抽象类,什么时候用接口A类的成员需要被继承并且 阅读全文
posted @ 2012-12-16 00:08 陈谨 阅读(111) 评论(0) 推荐(0) 编辑