using 引用命名空间 或 命名空间点调用以指明出处补充 访问修饰符
internal:只能在该程序集中使用
调用时可以不用写
object.,因为 object 是所有类的基类,任何类都继承了这个方法,直接使用即可
Equals(object objA, object objB):判断两个对象是否相等
Equals 所有ReferenceEquals(object objA, object objB):判断两个对象是否引用是否相同(主要用来比较引用类型对象)
false都是用 extern 关键字修饰的,声明在外部实现的方法
GetType():获取对象运行时的类型 TypeMemberwiseClone():获取对象的浅拷贝对象ToString():返回当前对象代表的字符串
Equals(object obj):默认实现是比较两者引用是否相同,相当于 ReferenceEquals,但是微软在所有值类型的基类 System.ValueType 中重写了该方法,用来比较值是否相等
GetHashCode():获取对象的哈希码字符串实质就是
char[]
string 转 char[]:char[] arr = str.ToCharArray();
str[0]string.Lengthstr.Format("{0}{1}", "xx", "xxx")str.IndexOf("x")str.LastIndexOf("x")str.Remove(index)
str.Remove(index, length)str.Replace(oldStr, newStr)str.ToUpper(); + str.ToLower()str.Substring(index)
str.Substring(index, length)str.Split('x')System.TextStringBuilder sb = new StringBuilder("xxx");sb.Capacitysb.Lengthsb.Append("xxx").AppendFormat("{0}{1}", x1, x2)...sb.Remove(index, length)sb[index] = 'x'sb[index]sb.Insert(index, "xxx")sb.Replace(oldStr, newStr)sb.Clear()补充:相等判断:
sb1.Equals(sb2)
| \ | class | Struct |
|---|---|---|
| 类型 | 引用 | 值 |
| 存储位置 | 堆 | 栈 |
使用 protected 修饰 | 可 | 不可 |
| 变量指定初始值 | 随意 | 不可 |
| 声明无参构造 | 随意 | 不可 |
| 声明有参构造后 默认的无参构造是否被顶掉 | 是 | 否 |
| 构造函数重初始化全部变量 | 随意 | 必须 |
| 析构函数 | 有 | 无 |
| 继承 | 可 | 不可 |
static 修饰 | 可 | 不可 |
| 内部是否可声明自己类型的变量 | 可 | 不可 |
补充:结构体可以继承接口,因为接口是行为抽象,只是一种规范
| \ | 抽象类 | 接口 |
|---|---|---|
| 构造函数 | 随意 | 无 |
| 继承性 | 单继承 | 多继承 |
| 成员变量 | 随意 | 无 |
| 方法 | 普通成员方法 虚方法 抽象方法 静态方法 | 抽象方法 |
| 访问修饰符 | 可 | 建议不写 默认 public |