黑马程序员技术交流社区

标题: (已解决)C#有没有静态代码块和构造代码块这2个东东 [打印本页]

作者: 陈汉维    时间: 2012-8-13 23:34
标题: (已解决)C#有没有静态代码块和构造代码块这2个东东
本帖最后由 陈汉维 于 2012-8-14 11:18 编辑

RT。
C#有没有静态代码块和构造代码块这2个东东。
经过测试好像没有。还是C#的静态代码块和构造代码块需要用其他的方式表达?
知道的回答下。非常非常感谢
作者: 陈汉维    时间: 2012-8-13 23:39
{:soso__3011607794282428538_3:}求解答,知道的大能请回答下,非常感谢。
作者: 许庭洲    时间: 2012-8-14 09:28
public class A
{
      public A()
      {
             Console.WriteLine("C#默认构造方法!");
      }  
      //C#非静态代码块
     {
            Console.WriteLine("C#非静态代码块!");
     }  
     //C#静态代码块
     static
     {
             Console.WriteLine("C#静态代码块!");
      }
      public static void test()
      {
           {
                 Console.WriteLine("普通方法中的代码块!");
           }
       }
}
public class B
{
    public static void main(String[] args)
   {
        A  a= new A();
        a.test();
        Console.WriteLine("**********************************************************");
        Console.WriteLine("***********区别两次new静态与非静态代码块执行情况***************");
        Console.WriteLine("***********************************************************");
        A b = new A();
        b.test();
    }
}

程序运行结果:
C#静态代码块!
C#非静态代码块!
C#默认构造方法!
C#普通方法中的代码块!
**********************************************************
***********区别两次new静态与非静态代码块执行情况***************
**********************************************************
C#非静态代码块!
C#默认构造方法!
C#普通方法中的代码块!

作者: 陈汉维    时间: 2012-8-14 09:38
许庭洲 发表于 2012-8-14 09:28
public class A
{
      public A()

还是不行啊。我在A中输入非静态代码块和静态代码块都编译失败。。。。
作者: 许庭洲    时间: 2012-8-14 09:44
陈汉维 发表于 2012-8-14 09:38
还是不行啊。我在A中输入非静态代码块和静态代码块都编译失败。。。。

在非静态代码块设个断点试试看,然后打开快速监视框查看错误原因,估计对你有帮助!
作者: 陈汉维    时间: 2012-8-14 09:53
许庭洲 发表于 2012-8-14 09:44
在非静态代码块设个断点试试看,然后打开快速监视框查看错误原因,估计对你有帮助! ...


貌似还是不行啊?难道C#没有静态代码块和构造代码块吗?还是我写的是错的?
作者: 许庭洲    时间: 2012-8-14 10:05
陈汉维 发表于 2012-8-14 09:53
貌似还是不行啊?难道C#没有静态代码块和构造代码块吗?还是我写的是错的? ...

把非静态代码注释掉,再重新编译运行一下试试看,是不是你的VS版本有问题啊!
作者: 陈汉维    时间: 2012-8-14 10:07
许庭洲 发表于 2012-8-14 10:05
把非静态代码注释掉,再重新编译运行一下试试看,是不是你的VS版本有问题啊! ...

= =!注释掉还是一样。我用的VS是2010的。奇怪了。java里面有静态代码块和构造代码块。在C#好像就没有,不知道是不是我写错了还是什么的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2