C# Object及成员
来源:互联网 发布:蒜泥白肉 知乎 编辑:程序博客网 时间:2024/06/15 17:39
本文章仅为个人学习,如有错误之处请指正。
1.Object 为一切类型的基类。
2.Object是引用类型,值类型先派生自ValueType,ValueType派生自Object。
3.Object[]并不是一切数组的基类,当Object[]无法和其他数组进行隐式或者显示的类型转换,即使Object[]实际存储的为对应的类型,也是没有办法进行转换的。
4.任何数组都是引用类型,而不是值类型,int[]也是引用类型。
Object成员详解:
1.ToString()
默认返回的是命名空间.类名。
其实内部实现是GetType().ToString();
其他类型的ToString()是由于重写了ToString()方法。
2.Equals(object obj)
判断参数变量是否与该对象实例相等。
1.值类型判断先判断是否类型相同,在判断实际存储的值是否相同。
如果一个整数默认为int类型,当整数123与一个double类型值为123进行Equals返回false。
2.引用类型判断的是指向的内存地址。
3.string类型判断的字符串是否一致,并且区分大小写。
4.如果对象实例为NULL则会抛出异常。
3. Equals(object objA, object objB)
判断两个参数变量是否相等。
1.值类型判断先判断是否类型相同,在判断实际存储的值是否相同。
如果一个整数默认为int类型,当整数123与一个double类型值为123进行Equals返回false。
2.引用类型判断的是指向的内存地址。
3.string类型判断的字符串是否一致,并且区分大小写。
4.如果两个参数变量都为NULL则为true,变量无所谓任何类型。
4.GetHashCode()
返回特定类型的哈希函数
5.GetType()
返回为Type类型的对象
返回的Type对象,实际是该实例的确切运行时类型。
详细说明:
当一个派生类赋值给基类的时候,基类调用GetType()返回的是派生类,表示类型指针实际指向的类型。
6.ReferenceEquals(object objA, object objB)
确定指定的 System.Object 实例是否是相同的实例。
没有发现与Object.Equals(object objA, object objB)有任何区别
7.MemberwiseClone
创建当前 System.Object 的浅表副本,也就是浅拷贝。
注意访问修饰词protected,只允许在其本身和派生类中使用,外界无法访问。
- C# Object及成员
- 【C#4.0】dynamic和var及object
- 09 C# 第九章 引用类型 ------ 重写Object成员和运算符重载
- C# 抽象类、密封类及类成员
- C# 抽象类、密封类及类成员
- C#泛型类的静态构造函数及静态成员[经典]
- Object类 Object常用成员方法
- C#读书笔记--回归自然之静态类、虚拟成员、抽象类及抽象成员小结
- object类的成员方法
- Object.prototype中的成员介绍
- C#3.0 object initializer
- c#中的Object类型
- c#中的Object类型
- Object Serialization in C#
- C#的Object类
- C#中的Object 类
- c# json to object
- C# object-oriented summary
- 树状数组模板及poj几道简单题
- POJ 2991 Crane(计算几何+线段树)
- c#获取带有汉字的字符串长度
- C++STL学习经典
- 第七章 正则表达式编程
- C# Object及成员
- linux上安装nginx
- mariadb (mysql) 配置
- ssh框架
- php文件大小单位转换
- Tensorflow的反卷积(上采样)
- 155. Min Stack
- sizeof与strlen区别
- 网易2017春招笔试真题编程题集合--魔力手环