摘要:
1.sealed---“断子绝孙”密封类不能被继承,不会有子类。密封方法可以重写基类中的方法。2.new---“你是你的,我是我的”new关键字用于显式隐藏从基类继承的成员,也就是说在使用派生类时调用的方法是new关键字新定义出来的方法,而不是基类的方法。在不使用new修饰符的情况下隐藏成员是允许的,但会生成警告。使用new显式隐藏成员会取消此警告,并使用派生类新定义的方法。即:好比是不用祖宗的东西,而是用自己创造的东西。using System.Text; namespace ConsoleApplication1
{ class Program { sta... 阅读全文
摘要:
private是完全私有的,只有在类自己里面可以调用,在类外部和子类都不能调用,子类也不能继承父类的private属性和方法protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(属性和方法都可以被子类所继承和调用)private和protected的共同点:外部都不可以访问private和protected的区别:在同一类中可以视为一样,继承中可以体现区别private在派生类中不可被访问,而protected可以public:对任何类和成员都完全公开,无限制访问。internal:同一应用程序集内部可以访问该类。protected internal 只能在同一 阅读全文
摘要:
初始化赋值不同const修饰的常量必须在声明的同时赋值,例如: public class Class1 { public const int MaxValue = 10;//正确声明 public const int maxValue; //错误,常量字段要求提供一个值 public Class1() { maxValue=10; } }readonly字段可以在初始化(声明或构造函数)的过程中赋值。在其他地方不能进行赋值操作。根据所使用的构造函数,readonly可... 阅读全文
摘要:
1.对于值类型如果对象的值相等,则相等运算符==返回True,否则返回False2.对于引用类型equals方法比较的是两个对象指向的内存空间内容是不是相同。也就是比较两个引用类型是否是对同一个对象的引用,即两个对象的内容是否相等。对于string类型,==比较字符串的值对于引用类型,==操作符类似于比较的是文件夹的路径是否相同,而equals方法比较的是文件夹中的内容是不是一样。using System; namespace Equals和等号的区别
{ class ClassPerson { private string name=null; ... 阅读全文
摘要:
1.字符串转为比特码:byte[] byteStr=System.Text.Encoding.Default.GetBytes(str);
2.字符串相加StringBuilder sb=new StringBuilder();
sb.Append("aa");
sb.Append("bb");
sb.Append("cc");
//和+等效
string str="aa"+"bb"+"cc";3.截取字符串的一部分Substring(起始位置,截取长度);string st 阅读全文
摘要:
先来看一下百度百科是怎样说的:传值调用是指方法在调用参数时,不是对原参数进行操作,而是创建参数的拷贝并对进行操作,这种调用有利于保护数据传引用调用是指传递一个地址的拷贝。在c#中(以下内容转自:http://www.cnblogs.com/wang_yb/archive/2011/05/18/2050574.html):如果传递的参数是基元类型(int,float等)或结构体(struct),那么就是传值调用。如果传递的参数是类(class)那么就是传引用调用。如果传递的参数前有ref或者out关键字,那么就是传引用调用。如果调用的函数中对参数重新进行了地址分配(new操作),那么执行结果类似 阅读全文