繁体   English   中英

c#类作用域和对象创建

[英]c# class scope, and object creation

无法完全理解班级的工作方式

 class Class1{
             private int a;
                 for(a=0;a<10;a++){}
// how can a be out of scope?


             }

以及为什么我可以做到这一点

class Class1{
             private int a;
             void tera()
              {
               private string aiha="lk"; //commenting this out ,makes it work why??
               for(a=0;a<10;a++){}
               }
             }

第一部分:一个类只能有方法和字段吗? 为什么?

第二部分:不能有声明的方法?

我知道这可能是一个不好的解释,但我不能把头缠住。

对于第一部分,您尚未定义方法名称,因此它不会起作用,也无法在不声明方法的情况下将方法的主体放置在类中。

class Class1{
      private int a = 0;
      void Example() {
         for(a=0;a<10;a++){}
       }

             }

会工作

对于第二部分,这是没有意义的,因为变量仅在方法的范围内可用,因此给它修饰符毫无意义。

您可以在此处了解有关类的更多信息但基本上,它是每次创建该类的实例时通常都会使用的一组成员和方法。

1。

(类是.NET Framework的基本构造。)

因为它是面向对象只能包含类似方法,字段,常量,属性和事件作为单个会员单位。 (注意:成员也必须在类型内声明)。

第2

在C#中,没有其他某些语言中的全局变量或方法。

而且我认为由于c#将方法视为单个对象,因此您不能尝试对其变量进行不同的访问,它会认为您正在尝试为该类创建另一个成员。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM