重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
先说执行顺序:我们在new一个对象时,如果类还没加载,就需要先将类加载到内存,此时就会执行静态代码块,在创建对象时,是先执行代码块,然后执行构造器。所以静态代码块、代码块、构造器的执行顺序是:静态代码块→代码块→构造器。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、网站制作、象州网络推广、成都小程序开发、象州网络营销、象州企业策划、象州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供象州建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
再说作用:静态代码块是用于初始化类的(在加载类时执行,只执行一次),代码块是用于初始化对象的(在创建对象时执行,每次创建对象时都执行),构造器是用于创建对象的。
因为在main方法里面语句是顺序执行
当语句执行到if(1+1==2)时,判断if()括号里面的条件是否为正确的,此时1+1就是等于2
条件正确,则顺序执行if里面的语句
则会输出12345和充值成功。
但是你的第一个语句的print的是err,是输出错误语句,他并不遵循顺序输出
你只要把第一个语句改为System.out.print(isname(''1231'');就可以了。
java对象的初始化发生在两个阶段:创建类的对象和创建类的实例。在命令行输入“java类名” 命令后,JVM被启动,进入类加载阶段。(1)JVM首先装载又类名指定的类,如果发现extends关键字,递归载入父类,找到Object类,以创建类的对象。(2)按照“先基类后派生类”的顺序依次初始化静态成员变量和静态块。接下来程序的主流程转到main放法,等待静态方法的调用或创建类的实例,以便调用非静态方法。当创建一个类的实例时,要在堆中分配足够的空间以容纳实例并且将其值清零(初始化),过程如下: ------ 1.按照“又派生类到基类”的顺序依次绑定构造方法的参数。 -------2.再按照“先基类后派生类”的顺序:先完成基类的定义,初始化非静态成员变量和非静态块,然后执行基类的构造方法体;接下来在完成派生类的定义,初始化非静态成员变量和非静态块,然后执行派生类的构造方法体。-----------------------------------------------------上面就是执行main方法前程序的执行顺序,最好记住,当然能理解最好。到了main方法后就简单了,程序会按照你的书写顺序执行。最重要的是最上面的,那是重中之重。----------------------------------打那么多字还真累。呵呵