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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刺客015 中级黑马   /  2016-1-25 09:50  /  7708 人查看  /  33 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

5黑马币
静态代码块优先于主函数吗     他的存在有什么作用??静态代码块需要返回值吗

33 个回复

正序浏览
楼主,您好!很高兴为您解答!
静态代码块是优先于主函数的!
程序还没执行main函数里面的代码,静态代码块里面的内容就已经在内存的静态块声明好了。静态代码块里面的内容都是优先于main函数,
他的存在是使静态代码块里定义的变量的值不能被修改,而且只有一份,只有程序结束的时候才会被回收。节省了内存空间。避免了重复定义。而且一些系统在运行时需要加载一些数据,这样就可以把这些数据定义在静态代码块中,以便系统一运行就能加载。
静态代码块不需要返回值。原因很简单,静态代码块里的定义的变量是整个程序都能直接访问的。
纯手打的,满意请采纳,谢谢!
回复 使用道具 举报
静态代码块 写在类中 优先于主函数  只加载一次 好比驱动 先执行
回复 使用道具 举报
/*
静态代码块:
静态代码块的特点:随着类的加载而执行,只执行一次,并优先于主函数执行。

静态代码块的作用:一般用于给类进行初始化。

静态代码块中执行语句不需要返回值。
*/

class B{
        static{
                System.out.println("in class B!");
                }
        }
public class StaticTest{
        //优先于main函数执行
        static{
                System.out.println("in StaticTest A!");}
               
                public static void main(String[] args){
                        System.out.println("in main!");
                       
                        //随着类的加载而加载
                        B b = new B();
                        //只执行一次,再创建一个新对象时不会再执行。
                        B c = new B();
                        }
                       
                        //优先于main函数执行
                static{
                System.out.println("in StaticTest B!");}
               
                static{
                System.out.println("in StaticTest C!");
                //return 3;//编译出错,错误内容:返回外部方法
                }
        }
回复 使用道具 举报
静态代码块优先于主函数,所以会先运行并且只运行一次,可以用于加载程序需要的文件或者驱动,相当于初始化。类似于构造代码块,不需要返回值。
回复 使用道具 举报
静态代码块优于主函数 是随着类的加载而加载 也就是说当类创建的时候 他就有了
回复 使用道具 举报
静态代码块  对类的数据进行初始化,仅仅只执行一次。
回复 使用道具 举报
静态代码块先于主函数,一般用于加载驱动,不需要返回值。
回复 使用道具 举报
静态代码块是在类的加载时被执行,而且只执行一次,静态代码块不用返回值。

回复 使用道具 举报
我只是来拿B的
回复 使用道具 举报
static
{
        静态代码块中的执行语句。
}
静态代码块的特点:随着类的加载而执行,只执行一次,并优先于主函数执行。
静态代码块的作用:一般用于给类进行初始化。
静态代码块中执行语句不需要返回值。

评分

参与人数 1黑马币 +6 收起 理由
kaixinkai + 6 赞一个!

查看全部评分

回复 使用道具 举报
静态代码块是随着类的加载而加载的,且只执行一次,它的存在是用来给类进行初始化的,一般用来加载驱动。静态代码块的格式是static{

代码块
}
回复 使用道具 举报
静态代码块
在类中方法外出现,并加上static修饰;
用于给类进行初始化,在加载的时候就执行,并且只执行一次。
一般用于加载驱动,初始化一些必要的东西,优先于主方法
回复 使用道具 举报
静态代码库一般用于加载驱动的   
回复 使用道具 举报
对类进行初始化,不要返回值吧
回复 使用道具 举报
class Demo{
        {        // 直接在类中编写代码块,称为构造块
                System.out.println("1、构造块。") ;
        }
        static{        // 使用static,称为静态代码块
                System.out.println("0、静态代码块") ;
        }
        public Demo(){        // 定义构造方法
                System.out.println("2、构造方法。") ;
        }
};
public class CodeDemo03{
        static{                // 在主方法所在的类中定义静态块
                System.out.println("在主方法所在类中定义的代码块") ;
        }
        public static void main(String args[]){
                new Demo() ;                // 实例化对象
                new Demo() ;                // 实例化对象
                new Demo() ;                // 实例化对象
        }
};
静态代码块优先于主方法执行,不管有多少个对象产生,静态代码块只执行一次,没有返回值。
回复 使用道具 举报
优先主函数 一班情况下是用来加载驱动和 初始化一些与类相关的属性的
回复 使用道具 举报
1.静态代码块 随着类的加载而执行,只执行一次,并优先于主函数,也优先于构造代码块。2.类加载的时候就会去执行静态代码块的内容。比如说:写连接数据库的那些内容时,经常有classforName("XXX"),用于加载一些东西,这些东西就可以写在静态代码块中。还有一些,你想让类加载时就执行的程序也可以放在里面。3.静态方法和返回值没有关系呀?如果一个方法没有访问对象的特有数据就可以定义为静态的,这样就可以通过类名直接调用,而没有必要通过创建对象来调用,这就是静态方法
回复 使用道具 举报
静态代码块在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次。在开发中 一般用于加载驱动,例如游戏启动时,需要先加载一些驱动。
回复 使用道具 举报
111111111111111111111111
回复 使用道具 举报
静态代码块优先于主函数吗 优先
他的存在有什么作用??   用来加载需要随着类加载的资源,例如玩游戏的开场动画,你以打开游戏就是可以.
静态代码块需要返回值吗   不是说需要不需要,静态代码块没有返回值,,如果你些了,就会报错,例如
public class Demo {
public static void main(String[] args) {

        }
static{
        int b=1;
        return b;
}
}
是报错的,
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马