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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.gao;

/*深入理解并掌握 类,静态代码块,构造代码块,构造函数执行顺序
*
* 静态代码块
* static
* {
*                 静态代码块中的执行语句
* }
* 随着类的加载而加载,优先于主函数执行,用于给类初始化的
* */

class StaticDemo
{
        //自定义无惨构造函数
        StaticDemo()
        {
                System.out.println("a");
        }
        //给类初始化
        static
        {
                System.out.println("b");
        }
        //给所有对象初始化
        {
                System.out.println("e");
        }
       
        StaticDemo(int x)//给指定对象初始化
        {
                System.out.println("f");
        }
        public static void show()
        {
                System.out.println("show run");
        }
}

/*
* StaticCodeDemo类首先加入内存
* */
public class StaticCodeDemo
{
        static
        {
                System.out.println("c");
        }
        public static void main(String[] args)
        {
                //使用到类中的内容时类才会被加载
                /*new StaticDemo();
                new StaticDemo();
                System.out.println("over");*/
                //打印结果是:c d b over
               
                //StaticDemo s = null;//s对象没有指向,所以StaticDemo类不会被加载,所以static代码块没有执行
               
                //StaticDemo.show();
                new StaticDemo(6);//打印结果:c d b e f
        }
        static
        {
                System.out.println("d");
        }
}

10 个回复

正序浏览
学习下了。。。
回复 使用道具 举报
华谦 来自手机 中级黑马 2014-8-22 11:44:06
10#
理解过,
回复 使用道具 举报
   学习了
回复 使用道具 举报
归纳的挺好的~~~~~
回复 使用道具 举报
要更深入了解的话 应该加个继承
回复 使用道具 举报
aduucool 来自手机 中级黑马 2014-8-21 23:48:22
地板
楼主感觉静态难理解吗
回复 使用道具 举报
辛苦了。自己也可以巩固下
回复 使用道具 举报
不错 学习下
回复 使用道具 举报
是静态代码块,构造代码块,构造函数这个顺序?看来我没理解错
回复 使用道具 举报
挺不错的!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马