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. Easyui 排序时 自动向后排传sort order 你妹真坑爹

    request 的时候 发现 sort 竟然是个数组!

  2. SQL获取选中时间的交集

    如上图:t1,t2代表要选择的时间段,t3,t4代表系统时间. 那么如果要获取选中时间段所有的交集为: 条件1 and ((t3>t1 and t1>t2) or (t3<t2 an ...

  3. gitolite随记

    1.git clone源码 git clone git://github.com/sitaramc/gitolite 2.安装 gitolite/install -ln 3.建立git仓库 gitol ...

  4. 继刚接触play framework后,一些心得

    我是个小菜鸟,我这些体会跟心得纯属个人观点,仅供参考,勿喷,我想记录下学习的历程,不断成长 在play2.0的框架里面  用到的最多的语言就是scala,对于习惯了java语言的我们来说  看这些语言 ...

  5. python 画正弦曲线

    要画正弦曲线先设定一下x的取值范围,从0到2π.要用到numpy模块. numpy.pi 表示π numpy.arange( 0 , 2π ,0.01)  从0到2π,以0.01步进. 令 x=num ...

  6. akoj-1140-英雄联盟阵营

    英雄联盟阵营 Time Limit:1000MS  Memory Limit:65536KTotal Submit:54 Accepted:16 Description 符文之地——瓦罗兰,作为最大的 ...

  7. python的闭包以及闭包在设计里的意图和作用

    def test(func): print func(3,4) test(lambda x,y : x+y) test(lambda x,y : x-y) 这是python的一种闭包写法,他的设计意图 ...

  8. 使用AlarmManager进行定时任务处理

    1:UploadingService.java package com.example.service; import com.example.broadcast.AlarmReceiver; imp ...

  9. BZOJ 2521 最小生成树(最小割)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2521 题意:每次能增加一条边的权值1,求最小代价让一条边保证在最小生成树里 思路:如果两个点中有环, ...

  10. Qt之四方分割器QuadSplitter

    在Qt经常会用到分割器QSplitter,可以对多个控件进行水平或者垂直分割,但有一些特殊的需求无法满足,比如:四方分割...QuadSplitter是qt-apps里面的一个应用,挺不错的,拿来和大 ...