今天我复习C#基础的时候,做了个小实验:
为了证实是否是 visual studio 的问题,
我回 java 去测试,发现,类的实例当然可以调用类的方法(java的免费开发工具很便捷,一直到现在我还是真希望那边的功能能多点更新到 visual studio“这不是我要说的主要内容今天就不说了”)。然后我就怀疑了,貌似教程中,类的属性和方法,不是对象都可以调用的么?
只是不推荐这样做,好像 C# 在模仿 java的时候做了改变,是么?
因为我用 visual studio 试着用实例去调用 类的方法,发现不支持!
但是属性是可以调用的!

解决方案 »

  1.   


    如果我说类的方法,就是属于类的,不是对象的,也就是static 方法!不是吧,还用上代码?class A{
      public string Name = "A Property";
      public static void AStatic()
      {
        Console.Write("A Static Method!);
      }
    }
    class B{
      A a = new A();
      string temp = a.Name;  //这个可以.
      a.AStatic();  //这个不可以!
    }
      

  2.   

    A.AStatic(); 不是告诉你了么,静态方法用类名.方法()
      

  3.   

    ...
    静态方法应该是直接 A.AStatic();
    而不是你a.AStatic();
      

  4.   

    vb3~vb6都支持你说的那种“对象.共享方法”的调用方法。因此,你应该说java是在抄袭人家vb而已。c#不允许这种含混的写法,它就是没有需要兼容vb6的包袱。这个用不着纠结。要“抄袭java”也是在大的方面,而不是死抠字眼去抄袭啊。
      

  5.   

    确实,java在有些地方没有做好处理!