一、源码执行时的先后顺序:

  • 父类的静态属性和静态块(按照声明顺序)
  • 本类的静态属性和静态块(按照声明顺序)
  • main方法
  • 父类的成员属性和成员块(按照声明顺序)
  • 父类构造器
  • 本类成员属性和块(按照声明顺序)
  • 本类构造器

二、源码执行需要注意:

  • 在类加载的时候,静态方法也已经加载了,但必须要通过类名或者对象名才能访问(相比于静态代码块,静态代码块是主动运行的,静态方法是被动运行的)
  • 当静态加载中遇到需要加载非静态的情况: 先加载非静态再加载静态(因为非静态可以访问静态,而静态不能访问非静态)
  • 静态代码块不能存在在任何方法体中
  • 静态代码块在类加载的时候就要运行
  • 静态代码块不能访问成员属性
  • 静态方法,实例方法只有在调用的时候才会去执行
  • 成员属性只能通过对象来调用,不能放在静态代码块中
  • 成员方法是通过加载类,然后new出实例化对象;通过对象运行这个方法

最新文章

  1. SQL Server 2014新特性——基数评估(白皮书阅读笔记)
  2. BPR: Bayesian Personalized Ranking from Implicit Feedback-CoRR 2012——20160421
  3. Hibernate常用增删改查方法
  4. responsive menu
  5. 生成最小树prim算法
  6. HDU 5768 Lucky7 (中国剩余定理+容斥)
  7. 命令行创建Windows窗体应用程序
  8. 【无聊放个模板系列】HDU 1269 (SCC)
  9. 12 hdfs常用文件、目录拷贝操作、删除操作
  10. 汇编语言学习——第二章 寄存器(CPU工作原理)
  11. Django Template模板
  12. java中模拟http(https)请求的工具类
  13. Android SDK工具(谷歌提供的16个工具)简介
  14. Vue(十二)vue实例的属性和方法
  15. RabbitMQ 发布订阅-实现延时重试队列(参考)
  16. Android开源日志库Logger的使用
  17. Jenkins持久化集成使用
  18. 关于微信分享到朋友圈(Thinkphp-tp3.2框架下实现)
  19. C#Color颜色表
  20. Codeforces #427 Div2 D

热门文章

  1. mac idea
  2. jvm-learning-双亲委派机制
  3. Java 中 LinkedHashMap 和 PriorityQueue 的区别是 什么?
  4. Spring配置连接池和 Dao 层使用 jdbcTemplate
  5. 学习ELK日志平台(一)
  6. Python - Pycharm常用快捷键
  7. Leetcode刷题之矩阵中的指针用法
  8. 攻防世界杂项MISCall
  9. 寄存器、特殊功能寄存器和ram之间的区别联系
  10. python中dtype,type,astype的区别