java 继承类 变量、静态变量、构造函数执行顺序

Java代码  
  1. class C{
  2. static int prt(int i){
  3. System.out.println(i);
  4. return i;
  5. }
  6. }
  7. class A{
  8. int a=C.prt(0);
  9. static int b=C.prt(1);
  10. A(){
  11. System.out.println("constructor of A");
  12. }
  13. }
  14. class B extends A{
  15. int c=C.prt(2);
  16. static int d=C.prt(3);
  17. B(){
  18. System.out.println("constructor of B");
  19. }
  20. public void test(){
  21. System.out.println("begin...");
  22. }
  23. }
  24. public class OrderTest{
  25. public static void main(String[] args){
  26. B b=new B();
  27. b.test();
  28. }
  29. }
  30. 执行结果:
  31. 1
  32. 3
  33. 0
  34. constructor of A
  35. 2
  36. constructor of B
  37. begin...

可以看出包含普通变量、静态变量、构造函数、继承类的执行顺序为:

1、父类的静态变量;

2、子类的静态变量;

3、父类的普通变量、父类的构造函数;

4、子类的普通变量、子类的构造函数;

5、普通方法。

java 继承类 变量、静态变量、构造函数执行顺序相关推荐

  1. java类的静态变量调用_Java学习笔记八---类的静态变量与静态方法的访问与调用方式...

    静态变量又称类变量,静态方法又称类方法,它们统称为静态成员或类成员.静态成员由static修饰,是属于整个类的,所有的对象共享这些静态成员.不需要创建任何对象,静态成员在类装载时就已初始化了,整个运行 ...

  2. java类中静态变量是如何被赋值的

    我们知道java中类加载的过程分为:加载.连接.初始化,其中连接阶段又分为验证.准备和解析,准备阶段的动作就是为类的静态变量分配内存,并将其设置为一个默认值,java中各种数据类型的默认值如下: 数据 ...

  3. java中类变量局部量_java入门---变量类型类变量局部变量实例变量静态变量

    在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: typeidentifier[= value][, identifier[= value]...]; 格式说明:type为Jav ...

  4. Java中的static———静态变量

    引言 static 是 java 语言中的关键字,意思是"静态的",它可以用来修饰变量.方法.代码块等,修饰的变量叫做静态变量,修饰的方法叫做静态方法,修饰的代码块叫做静态代码块. ...

  5. java先执行static还是构造函数_【Java基础】类的实例化、static、父类构造函数执行顺序...

    重温java基础,以免自己以后犯原则性错误,这是最基本,最基础的东西. 先看结论: 一个类的实例化过程: 1,首先会执行类中static代码块(不管代码块是否在类的开头还是末尾处),如果这个类有父类, ...

  6. Javascript 的函数式对象(三)利用闭包模拟类的静态变量和方法

    除了模拟类的私有变量和私有方法.闭包还可用来模拟类的静态变量和方法. 除了再次利用js的闭包特性,还需要借助js语法上的一些特点. 执行上述代码后,浏览器控制台将会输出如下字符串: Created 1 ...

  7. python 类中静态变量_Python中的类或静态变量

    python 类中静态变量 Python类/静态变量 (Python Class / Static Variables) Class or Static variables are class-rel ...

  8. C#构造函数、私有构造函数、静态构造函数与构造函数执行顺序

    https://www.cnblogs.com/ArtofDesign/p/3603986.html 默认构造函数,如果没有为类指定任何构造函数,编译器会自动为类创建一个无参构造函数,用以初始化类的字 ...

  9. 静态代码块、非静态代码块、构造函数执行顺序

    静态代码块.非静态代码块.构造函数执行顺序 /*** 类的实例化顺序,静态代码块.非静态代码块.构造函数.* @author MING*/ class Person {static String na ...

最新文章

  1. Chemical Science | 基于金属的片段分子库用于筛选候选药物
  2. NFS的access denied
  3. AWS回应Elastic修改开源协议:创建“真正”开源的Elasticsearch分支
  4. [Z]如何使用OpenGL扩展
  5. web服务器软件_概述
  6. 回归树与基于规则的模型(part2)--简单回归树
  7. 云计算技术背后的那些天才程序员:KVM之父Avi Kivity
  8. MacBook运行C++,不用安装任何软件
  9. python学习网站-python学习网站整理
  10. c语言贪心算法合并箭,贪心算法:用最少数量的箭引爆气球
  11. 小甲鱼c语言_C语言可以不用,但是不能不会!
  12. 计算机以弧计算和以度计算公式,角度换算公式(角度计算公式图解)
  13. 线性代数笔记5.3实对称矩阵的对角化
  14. iOS分享到WhatsApp
  15. hdr_beg(host) hdr_reg(host) hdr_dom(host)
  16. Raft一致性算法论文
  17. 【Matlab 六自由度机器人】关于灵活工作空间与可达工作空间的理解(附MATLAB推导代码)
  18. ai怎么平均排列,AI怎么等距离排列直线? ai等比排列直线的教程
  19. Android自定义文本输入框光标颜色
  20. 【 HDU 1166】 敌兵布阵 树状数组从0到1

热门文章

  1. JavaScript日历(es5版本)
  2. C#获取枚举描述代码
  3. 分布式监控报警平台Centreon之:Centreon依赖安装
  4. 这13个开源GIS软件,你了解几个?【转】
  5. HDU 4391 Paint The Wall 段树(水
  6. Apache模块开发
  7. Nginx之rewrite:域名与二级目录之间的跳转
  8. 《认清C++语言》---谈谈const
  9. 修改mysql导入sql大小限制_修改phpMyAdmin导入SQL文件的大小限制
  10. 传入json对象_【Python基础】可迭代对象amp;迭代器对象及其实现