A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 陈汉维 于 2012-8-14 11:18 编辑

RT。
C#有没有静态代码块和构造代码块这2个东东。
经过测试好像没有。还是C#的静态代码块和构造代码块需要用其他的方式表达?
知道的回答下。非常非常感谢

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

7 个回复

倒序浏览
{:soso__3011607794282428538_3:}求解答,知道的大能请回答下,非常感谢。
回复 使用道具 举报
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#普通方法中的代码块!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
许庭洲 发表于 2012-8-14 09:28
public class A
{
      public A()

还是不行啊。我在A中输入非静态代码块和静态代码块都编译失败。。。。
回复 使用道具 举报
陈汉维 发表于 2012-8-14 09:38
还是不行啊。我在A中输入非静态代码块和静态代码块都编译失败。。。。

在非静态代码块设个断点试试看,然后打开快速监视框查看错误原因,估计对你有帮助!
回复 使用道具 举报
许庭洲 发表于 2012-8-14 09:44
在非静态代码块设个断点试试看,然后打开快速监视框查看错误原因,估计对你有帮助! ...


貌似还是不行啊?难道C#没有静态代码块和构造代码块吗?还是我写的是错的?
回复 使用道具 举报
许庭洲 黑马帝 2012-8-14 10:05:44
7#
陈汉维 发表于 2012-8-14 09:53
貌似还是不行啊?难道C#没有静态代码块和构造代码块吗?还是我写的是错的? ...

把非静态代码注释掉,再重新编译运行一下试试看,是不是你的VS版本有问题啊!
回复 使用道具 举报
许庭洲 发表于 2012-8-14 10:05
把非静态代码注释掉,再重新编译运行一下试试看,是不是你的VS版本有问题啊! ...

= =!注释掉还是一样。我用的VS是2010的。奇怪了。java里面有静态代码块和构造代码块。在C#好像就没有,不知道是不是我写错了还是什么的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马