偶刚开始学习C#,但碰到两个问题。
1. 字符串类String  与 字符串引用型 string  是什么区别。
用 string str= "Hello";能不能继承String 类的相关属性和方法吗?      
二者在用时有哪些注意事项? 2. 基类Object 与 对象object(不知道是不是对象) 是什么区别?
   object ob = new object();
   ob 为什么可以赋不同类型的值:ob= “Hello”;ob = 13;请高手解答,请尽量详细一点!谢谢!!!

解决方案 »

  1.   

    Object 类
    支持 .NET Framework 类层次结构中的所有类,并为派生类提供低级别服务。这是 .NET Framework 中所有类的最终基类;它是类型层次结构的根。
      

  2.   

    string 就是String
    就行int就是Int32一样~~~~object和Object也是一样
      

  3.   

    第一个问题:
    string就是变量
    可以赋值和进行字符操作
    而String在是C#里是类
    可以通过实例化调用他的方法
    在C#里String、string其实差不太多。第二个问题:object和Object没有区别,其实是一个类(System.Object)。 
    Object写法是CLR的,为了c#的代码书写习惯,ms增加了object来表示System.Object. 
    类似的有int和System.Int32,string和System.String等 
      

  4.   

    车 a=new  汽车因为  汽车 是 车的一种 
    但是 a 只会暴露车的特性 会隐藏其汽车的特性。因为我们现在只把他看做车。同理
    objcet o="abc";
    因为 string 是 objcet的一种。
    但是 o只会暴露objcet的特性 会隐藏其string的特性。因为我们现在只把他看做objcet。以上。第一个问题 :是一样的 不过微软把string 做成了关键字。
    就如同int 对应Int32一样。
      

  5.   

    Object简单说是万能型,什么类型都可以
    string是定义变量的,后者是类
      

  6.   

    一句话,首字母小写的那种是首字母大写的“别名”...所以在特性和使用上没有任何区别...唯一的区别是...首字母大写的那种如果没有System上下文就什么都不是,是未定义的异常...
      

  7.   

    string是c#中的类,String是.net Framework的类 
    string 类型表示一个 Unicode 字符的字符串。string 是 .NET Framework 中 System.String 的别名。
    Object是基类
      

  8.   

    这两个问题其实都涉及到一个概念,那就是“隐式转换”。string str = "Hello world!";在.Net内部其实进行了转换,即 String str = new String("Hello world!");转化为String类,类对象为str。同样,object对象obj转换为Object类。因为Object是一切基类的基类,也就是根类,所以不管是String类还是Int32类都可以隐式转换为Object类。
      

  9.   

    string 就是 String
    object 就是 Object
      

  10.   

    string是c#中的类,String是.net Framework的类(在c# IDE中不会显示蓝色)
    c# string映射为.net Framework的String
    如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作
    如果使用c#,建议使用string,比较符合规范
    string始终代表 System.String(1.x) 或 ::System.String(2.0) ,String只有在前面有using System;的时候并且当前命名空间中没有名为String的类型(class、struct、delegate、enum)的时候才代表 System.String
    string是关键字,String不是,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以
      

  11.   

    1. string是String的别名,是由C#编译器定义的。在CLR中是相同的解释,生成的IL也是相同的。所以使用方法也相同。2.因为Object是所有类的基类,所以所有的类都可以隐式转型为object类。