- 博客(34)
- 收藏
- 关注
原创 error和exception(错误跟异常)有什么区别
error和exception(错误跟异常)有什么区别? error:表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。exception:表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。
2012-07-27 14:54:59 1251
原创 abstract class和interface有什么区别
abstract class和interface有什么区别? 声明方法的存在而不去实现它的类被叫做抽象类(abstractclass),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类
2012-07-27 14:53:38 993 3
转载 启动一个线程是用run()还是start()?
启动一个线程是用run()还是start()? 启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程。
2012-07-27 14:50:17 595
原创 常量字段定义
隐含为static 必须在声明时初始化 必须被初始化为编译时常量值 只有简单类型,枚举,字符串才可以是常量常量字段代码:class Pair { public Pair(int x, int y) { // ??? } ... priv
2012-07-18 16:16:57 1276
转载 静态字段定义
被缺省初始化为0/false/null 可以在声明时初始化 只能通过类名访问代码示例:class Pair { public Pair(int x, int y) { ... } private static Pair origin = new Pair(0,0);
2012-07-18 16:12:07 566
转载 一个构造函数可以调用另一构造函数
一个构造函数可以调用另一构造函数,使用:this(…) sealed class Pair { public Pair(int x, int y) : this(x, y, Colour.Red) { } public Pair(int x, int y, Colour c) { .
2012-07-18 16:07:36 846
原创 如何声明一个类
什么是类: 类是用户自定义的引用类型类的代码示例:class Pair { public int X, Y; //公有变量名单词的首字母大写(PascalCase规则)}class Pair { private int x, y; //非公有变量名第一个单词的首字母小写(camelCase规则)}class Pair {
2012-07-13 10:01:58 3796 2
原创 C#中索引跟数组的比较
索引跟数组的比较• 索引和数组的比较 索引可以使用非整型参数 索引可以被重载 索引可以是私有的 索引不能有ref/out 型参数struct Matrix { ... public double this [int row, int col] {
2012-07-13 09:56:48 498
原创 只读索引vs只写索引
定义:• 只有get 语句的索引是 只读索引 • 只有set 语句的索引是 只写索引代码示例:struct StringSection { ... public char this [int at] { get { return ... }
2012-07-13 09:54:53 1162
转载 C#中索引提供[ ] 类的语法
索引提供[ ] 类的语法 总是一个实例成员,可以是虚拟的 没有ref/out 参数struct StringSection { ... public char this [int at] { ... } ... }StringSection cord("csh
2012-07-12 09:47:01 443
原创 C#中属性和字段的比较
属性和字段的比较: 属性不能使用ref/out 型参数 属性使用前必须赋值//属性struct Time { ... public int Hour { set { ... } } private int hour; }Time lunch; Meth
2012-07-12 09:40:51 757 2
转载 什么是静态属性
静态属性是和类联系在一起的 只能通过类名使用sealed class Error { ... public static TextWriter Log { get { return log; } } ... private static Stream sink
2012-07-12 09:39:18 2933
原创 结构体中只读属性介绍
结构体中只读属性规则: 只读属性只有get语句 任何写操作都会导致错误 就像一个只读字段结构体中只读属性代码示例:struct Time { ... public int Hour { get { return hou
2012-07-12 09:35:48 1125
原创 C#中get,set语句的使用方法
set语句的使用方法• set 语句 是通过value 标识符来进行赋值的 可以包含任何语句(甚至没有语句)struct Time { ... public int Hour { ... set { if (value 24)
2012-07-11 14:00:13 3151
原创 C#中原始的封装问题的解决办法
封装属性 自动使用get 标识符进行读 自动使用set 标识符进行写代码示例:struct Time { ... public int Hour //没有(),是H而不是h { get { ... } set { ... } } private
2012-07-11 13:53:08 445
转载 原始的封装是麻烦的
原始的封装代码示例:struct Time { ... public int GetHour() { return hour; } public void SetHour(int value) { hour = value; } ... pri
2012-07-11 13:42:21 1092
转载 什么是静态构造函数
静态构造函数初始化类: 可以初始化static 字段而不是const 字段 当类被装载时由.net调用 不能被调用:没有参数,没有访问修饰符静态构造函数代码示例:struct Pair { public static readonly Pair Origin; public Pair(int x, int y)
2012-07-10 11:06:21 580
原创 C#中构造函数的找错机制
构造函数找错代码示例:struct HHG { HHG(int toTheGalaxy) { question = 9 * 6; 1 ... } string cover = "Don't Panic";
2012-07-10 11:01:15 484
原创 什么是只读字段
只读字段定义: 不能被赋值 不能被用作ref/out 型参数只读字段代码示例:struct Pair { public static readonly Pair Origin = new Pair(0,0); public Pair(int x, int y) { this.x = x;
2012-07-10 10:52:31 923
原创 构造函数中:this(…)的使用
:this(…)• 一个构造函数可以调用另一构造函数 struct ColouredPoint { public ColouredPoint(int x, int y) : this(x, y, Colour.Red) { } public ColouredPoint(int x, int y,
2012-07-09 10:25:56 1563
原创 结构类值的产生与初始化
结构类值的产生• 一个结构类的变量存在于栈(stack)中 字段不是被预先赋值的 字段只有被赋值后才能读 使用点操作符来访问成员下面的例子假设Pair是一结构,它有两公有整数类成员X,Ystatic void Main() { Pair p; Console.Write(p.X); //
2012-07-09 10:18:27 463
原创 C#中结构体的声明
定义: 结构是用户自定义的值类型代码样式:struct Pair { public int X, Y; //公有变量名单词的首字母大写(PascalCase规则)}struct Pair { private int x, y; //非公有变量名第一个单词的首字母小写(camelCase规则)}struct Pair {
2012-07-09 10:15:32 2532
转载 枚举的命名空间
namespace System { public abstract class Enum ... { // 静态函数 public static string[] GetNames(Type); ... // 实例函数 public override string
2012-07-06 10:37:49 1569
原创 枚举的转换怎么做
• 隐式转换 0 可以转为任一 enum类型 从不抛出错误 • 显式转换 从enum 到enum 通过内在类型转换 从enum 转为数值类型(包括char) 从数值类型(包括char) 转为 enum 从不抛出错误0可以被转为任一enum类型,不管en
2012-07-06 10:13:22 684
原创 C#中枚举类型的使用总结
解析: 它是一个用户声明的值类型代码示例:enum Suit { Clubs, Diamonds, Hearts, Spades }//Suit表示一副牌,它有4个花色:梅花(Clubs),方块(Diamonds),红心(Hearts),//黑桃(Spades)sealed class Example { static void M
2012-07-06 09:42:22 958
转载 C#中的数据类型统计
• 值类型 变量直接包含它们自己的数据 局部变量总是放在栈(stack)中 • 引用类型 变量间接指向它们的数据 局部变量指向堆(heap)中的对象枚举(enum) 值类型结构(struct) 值类型类(class) 引用类型接口(interfac
2012-07-05 11:49:10 409
转载 C#中using标识使用手册
using标识使用规则:• using标识使类在命名空间中可见 只能在一个命名空间的开头使用 using标识代码格式:namespace RainForest.GUI { using System.Collections; ... sealed class Book { ...
2012-07-05 11:45:48 497
转载 命名空间之全名命名空间
全名命名空间规则:• 命名空间反映的是逻辑结构 带点的全名称是冗长和讨人厌的 但它比不带点的名字要好 全名命名空间代码格式:namespace RainForest.GUI { sealed class Book { ... private System.Collec
2012-07-05 11:41:37 399
转载 for循环,与foreach数组遍历找错机制
for循环,与foreach数组遍历找错机制{ for (int i = 0; i != 12; i++) 1 { ... } int i = 0; }for (int i = 0, i == 12, i++) 2{
2012-07-03 09:47:10 507
转载 foreach语句使用需要注意的几点
foreach用来遍历集合或数组中的元素。• foreach ( 类型 标识符 in 表达式 ) 类型和标识符声明一个循环变量 循环变量隐含为readonly, 不能有ref 或out 修饰 表达式是可列举的集合sealed class ForeachTranslation { static voi
2012-07-03 09:41:57 666
转载 for循环语句使用总结
for块中声明的变量是局部的,只在for块中有效 可以省略for语句中的任何一部分for (int digit = 0; digit != 10; digit++) { Console.Write("{0} ", digit); } //屏幕上显示0 1 2 3 4 5 6 7 8 9在for块中声明的变量只在for块中有效。例如:
2012-07-03 09:38:43 574
原创 switch语句使用总结
switch语句• 语法 用于整数类类型 case后的标志必须是编译时为常数 没有表示范围的缩略形式string DaySuffix(int days) { string result = "th"; if (days / 10 != 1) switch (days % 1
2012-07-02 09:43:59 683
转载 bool 一个操作符关键字
bool 是一个关键字 它是System.Boolean 的别名 它的取值只能为true 和 falsebool love = true; bool teeth = false;//正确System.Boolean love = true; System.Boolean teeth = false;//正确using Syste
2012-07-02 09:41:24 657
转载 C#中return语句使用简单介绍
• return语句返回一个值 表达式必须匹配返回值的类型 最好一个函数只有一个retun语句 使用return; 来结束一个 void 函数string DaySuffix(int days) { string result; ... return result; }一个函数
2012-07-02 09:37:44 2686
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人