关于编程练习2-5,为什么输出顺序不同,哪个地方出了问天阁

关于编程练习2-5,为什么输出顺序不同,哪个地方出了问天阁

public class CodeBlock{
   // 创建CodeBlock的构造块
    {
        System.out.println("CodeBlock的构造块");
    }


   //创建CodeBlock的静态代码块
   static{
      System.out.println("CodeBlock的静态代码块"); 
   }


   //创建CodeBlock的构造方法
    public CodeBlock(){
        System.out.println("产生了CodeBlock类实例对象"); 
        System.out.println("CodeBlock的构造方法"); }


   public static void main(String[] args){
      System.out.println("CodeBlock的主方法"); //编写代码测试运行优先顺序,运行结果参见效果图
      
    
              Code c = new Code();
          
      CodeBlock cb = new   CodeBlock();
    //   System.out.println("产生CodeBlock类实例对象");
      
  
    //   System.out.println("产生Code类实例对象");
         
   }
}
class Code{
   //创建外部类Code构造块(构造块)
       {
        System.out.println("Code的构造块");
    }

   //创建外部类Code静态代码块(静态代码块)
   static{
      System.out.println("Code的静态代码块"); 
   }

   //创建外部类Code构造方法(构造方法)
 public Code(){
     System.out.println("产生了Code类实例对象"); 
     System.out.println("Code构造方法");
 }
}

http://img1.sycdn.imooc.com/climg//590869740001438604290375.jpg

http://img1.sycdn.imooc.com/climg//590869850001995e02520165.jpg


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

System.out.println("产生了Code类实例对象"); 把这条语句写到主方法中创建Code类对象之前

System.out.println("产生了CodeBlock类实例对象"); 把这条语句写到主方法中创建CodeBlock对象之前

如果我的回答解决了你的疑惑,请采纳!祝学习 愉快!

  • 莨菽菽 提问者 #1
    非常感谢!
    2017-05-03 10:01:30
  • gank #2
    好像把这两行写到主方法里 并不可以实现题目的要求
    2017-06-16 21:03:59
  • 好帮手慕珊 回复 gank #3
    你好!这两行写到主方法里是可以实现题目要求的,如果你的有问题,可以再开一个新的问答,把你的代码贴出来。
    2017-06-17 16:16:59
好帮手慕雪 2017-05-02 19:01:42

什么意思,不太明白?你是说实例化对象的时候如何输出一个结果?那就在构造方法中增加一个输出语句就行了。祝:学习愉快

  • 提问者 莨菽菽 #1
    不好意思,我重新编辑了下问题,贴图和代码上去了,麻烦你再到问题里看看,就是顺序不一样的问题
    2017-05-02 19:13:16
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师