class A
{
public A(){
System.out.println("测试!!!!!!!!!!!");
}
} class Demo19 extends A
{ {
x=7;//代码块初始化
System.out.println("hello world!测试代码块的执行顺序!AAAAAAAAAAA");
}
public int x=1;//这里不会初始化变量值 只会声明变量
public int y=2;//这里不会初始化变量值 只会声明变量 public Demo19(){
//super();
//相当于 x=7
//然后x=1;
//y=2;
//y=13;
}
public Demo19(int d_x,int d_y)
{ //super();
//x=7;
//x=1;
//y=2;
//y=13;
x=d_x;
y=d_y;
//super();//假如显示的调用 那么是不能放在这里初始化的
}
//代码块的执行顺序是按照代码块的顺序执行的
//代码块的执行时间:在对象初始化的时候执行!!!!!!!!!!!!!
{
y=13;//代码块初始化
System.out.println("hello world!测试代码块执行的顺序!BBBBBBBBBBBB");
} //构造函数的代码块 public static void main(String[] args)
{
//这里初始化的时候就跟上面的初始化差不多
Demo19 demo=new Demo19();
System.out.println("测试代码块:x="+demo.x+" ,y="+demo.y); //这里的初始化相当于上面的那个操作
Demo19 demoOne=new Demo19(12,45);
System.out.println("测试代码块:x="+demoOne.x+" ,y="+demoOne.y); System.out.println("其他的顺序是不变的!这个是比较重要的"); System.out.println("代码块的使用!"); }
}

抽象类的初始化:

abstract class A
{
String name;
String id; public abstract void test();
} abstract class B extends A
{
//子类也可以是抽象类,不实现父类的方法
} class C extends A
{
public void test(){
System.out.println("子类假如不是抽象类 那么必须实现父类的方法");
}
}
abstract class D1
{
/* 抽象类中也是有构造函数的,只是这个只能子类初始化 */ D1(){
System.out.println("测试抽象类的构造函数!");
}
static String name="什么是你";
}
class D extends D1
{
D(){
System.out.println("子类调用父类的构造函数");
}
public void test(){
System.out.println(this.name); System.out.println("假如抽象类中没有抽象方法,那么继承也是没有问题的");
}
}
class Demo5
{
public static void main(String[] args)
{
D d =new D();
d.test();
System.out.println("抽象类!!!!!");
System.out.println("类不支持多重继承!!!!!!!!!!!!!!!!");
} }

java 对象初始化和代码块初始化顺序的更多相关文章

  1. java 子类的实例化和代码块初始化过程

    1,子类的实例化 1,子父类中的构造函数的特点. 在子类构造对象时,发现,访问子类构造函数时,父类也运行了. 为什么呢? 原因是:在子类的构造函数中第一行有一个默认的隐式语句. super(); 子类 ...

  2. Java 中静态代码块初始化问题测试

    Java 中静态代码块初始化问题测试 原创 情况一:变量是 static final 修饰的"编译期常量",如 public static final String a = &qu ...

  3. Java基础6:代码块与代码加载顺序

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  4. java代码块执行顺序

    父类 public class Father { public Father() { System.out.println("父类构造PUBLIC father"); } stat ...

  5. java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序

    java静态代码块/静态属性.构造块.构造方法执行.main方法.普通代码块的顺序 这也是在笔试中的一个重要的考点,就有一个输出语句让你写出输出的结果. 理论知识: 静态代码块是:属于类的,在类加载时 ...

  6. Java面试题 静态代码块 构造代码块 构造方法 的执行顺序

    JAVA中的静态代码块 构造代码块 构造方法执行顺序: 静态代码块(类加载时执行)>>构造代码块>>构造方法 下面展示一个简单的例子,推荐大家动手运行一遍: public cl ...

  7. Java中的构造代码块

    代码块 ----a静态代码块 ----b构造代码块 ----c普通代码块 执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. a.静态代码块: 静态代码块 ...

  8. java中的静态代码块、构造代码块、构造方法

    运行下面这段代码,观察其结果: package com.test; public class HelloB extends HelloA { public HelloB() { } { System. ...

  9. Java之static静态代码块

    Java之static静态代码块 构造代码块 使用{}包裹的代码区域,这里的代码区域特指位于class{}下面的而不是存在于其他type method(){}这类函数下面的代码区域 public cl ...

随机推荐

  1. EF中执行原生sql与使用Local获取本地数据

    使用DbSet的Local属性可以访问当前context中被追踪且没有被标记为删除的实体(内存中的数据) using (var context = new BloggingContext()) { / ...

  2. 数据库分库分表(sharding)系列(二) 全局主键生成策略

    本文将主要介绍一些常见的全局主键生成策略,然后重点介绍flickr使用的一种非常优秀的全局主键生成方案.关于分库分表(sharding)的拆分策略和实施细则,请参考该系列的前一篇文章:数据库分库分表( ...

  3. hdu 畅通工程续

    算法:多源最短路(floyd) 题意:有多个城镇,有些之间有通路,给你起点和终点,输出最短路径: Problem Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路 ...

  4. 引用 exit、return、_exit、_Exit这几个函数的区别

    引用 exit.return._exit._Exit这几个函数的区别 一.exit函数和return函数的主要区别是: exit用于在程序运行的过程中随时结束程序,其参数是返回给OS的.也可以这么讲: ...

  5. FCKeditor插件开发实例:uploadify多文件上传插件

    FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器.它志于轻量化,不需要太复杂的安装步骤即可使用.它可和PHP.JavaScript.ASP.ASP.NET.ColdFusi ...

  6. seajs模块压缩问题

    在优化整理项目代码时,想使用seajs来把代码模块化.看了下官方5分钟上手教程,觉得很不错,也没多想就一直开发下去了,也没出什么问题.等一同事说把代码打包个放到设备上去测试一下,发现怎么也跑不起来,郁 ...

  7. symfony2 登录验证(转自http://www.newlifeclan.com/symfony/archives/300)

    注意:如果你需要为存储在某种数据库中的用户做一个登录表单,那么你应该考虑使用FOSUserBundle,这有助于你建立你的User对象,还为您提供了常见的登录.注册.忘记密码的路由和控制器. 在此文章 ...

  8. Jquery各版本下载,附Jquery官网下载方法

    jQuery version 2.1.1 http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.1.js http://ajax.aspnetcdn.com ...

  9. C语言--位运算符

    一.位运算符 1.按位与:& 1> 功能 * 只有对应的两个二进制位为1时,结果位才为1,否则为0 * 举例:10用二进制表示为1010,  7用二进制表示为0111.对两个数值进行&a ...

  10. try...catch...finally中try块发生的事件顺序

    1.try块在发生异常的地方中断程序的执行.2.如果有catch块,就检查该块是否匹配已抛出的异常类型.如果没有catch块,就执行finally块(如果没有catch块,就一定要有finally块) ...