Java 父类、静态、子类执行顺序
顺序:
父类的静态,子类静态,父类非静态,父类构造方法,子类非静态,子类构造方法。
public class A {
    static String name = "cjj";
    int age = 22;
    public A() {
        System.out.println(name +" "+ age);
    }
    public static void main(String[] args) {
        B b = new B();
    }
}
class B extends A{
    static String name = "lnn";
    int age = 21;
    public B() {
        System.out.println(name +" "+ age);
    }
}
运行结果:
cjj 22
lnn 21
原理:
类在加载的时候,先加载父类,再加载子类。加载父类的时候,先加载父类的静态成员,再加载子类的静态成员,再加载父类的非静态成员和构造方法,最后加载子类的非静态成员和构造方法。
Java 父类、静态、子类执行顺序的更多相关文章
- Java静态函数、父类、子类执行顺序
		package class_test; /** * 静态函数.父类.子类执行顺序 * @author root * */ public class Test { public static void ... 
- java中静态代码执行顺序
		1.Java中静态变量只能在类主体中定义,不能在方法中定义. 静态变量属于类所有而不属于方法. 2. 静态块:用static申明,JVM加载类时执行,仅执行一次 构造块:类中直接用{}定义,每一次创建 ... 
- JAVA 父类与子类初始化顺序问题
		main方法-->子类对象的初始化语句(new className()语句)--->子类构造[因为继承的缘故,它先不会执行]--->父类构造[这一步先不会执行]--->父类静态 ... 
- Java子类和父类的初始化执行顺序
		要明白子类和父类的初始化执行顺序,只需要知晓以下三点,就不会再弄错了. 1.创建子类对象时,子类和父类的静态块和构造方法的执行顺序为:父类静态块->子类静态块->父类构造器->子类构 ... 
- 静态(static)代码块、构造代码块、构造函数、父类子类执行顺序
		静态代码块:static修饰的代码块. 在类加载-初始化的时候进行,主要目的是给变量赋予初始值 构造代码块:直接在类中定义且没有加static关键字的代码块称为构造代码块. java会把构造代码块放到 ... 
- 关于java中构造方法、实例初始化、静态初始化执行顺序
		在Java笔试中,构造方法.实例初始化.静态初始化执行顺序,是一个经常被考察的知识点. 像下面的这道题(刚刚刷题做到,虽然做对了,但是还是想整理一下) 运行下面的代码,输出的结果是... class ... 
- Java Object 构造方法的执行顺序
		Java Object 构造方法的执行顺序 @author ixenos 为了使用类而做的准备工作包括三个步骤 1)加载:类加载器查找字节码(一般在classpath中找),从字节码创建一个Class ... 
- C# 静态构造函数,静态变量执行顺序(升华版)
		上篇 是基本语法基础下的执行顺序,包括继承这个维度下的执行顺序,我们可以依照的规律顺下来,下面我们看下一些摸不到头脑的情况 我们实验 一个 类中的方法 去调用另一个非继承类的情况, 我们主要看下 ... 
- Java父类与子类中静态代码块 实例代码块 静态变量 实例变量 构造函数执行顺序
		实例化子类时,父类与子类中的静态代码块.实例代码块.静态变量.实例变量.构造函数的执行顺序是怎样的? 代码执行的优先级为: firest:静态部分 second:实例化过程 详细顺序为: 1.父类静态 ... 
- Java中子类和父类相关方法的执行顺序
		无意中看到下面一个题目,大家一起来看看最后的输出结果是什么.反正我看完之后,用IDE测试后感觉知识点得到巩固了. /** * 函数执行顺序测试 * Created by 萌小Q on 2017/5/1 ... 
随机推荐
- 公客网beta阶段发布说明
			项目 公客 公正客观的课程评价网站 功能说明 评价的增删改 对课程发表评价 限制评价次数(3次),删除与增量修改评价 评价下的讨论与点赞 在评价下添加讨论,支持在讨论中使用@与对方交流想法 为评价点赞 ... 
- HP数组转JSON函数json_encode和JSON转数组json_decode函数的使用方法
			这两个函数比较简单,我这里直接写例子,但是有一点一定要注意,json数据只支持utf-8格式,GBK格式的数据转换为json会报错! json_encode()用法: <?php$data =a ... 
- L171
			As much as we thirst for approval, we dread condemnation.我们渴望赞许,同样也害怕受到指责.If somebody's father was o ... 
- cookie和session的区别与联系
			http://www.cnblogs.com/s1nker/p/4876284.html 基本概念 对于许多人来说,都知道的是,cookie是存储在客户端的,可以用来放需要长期使用的内容,例如用户密码 ... 
- java事务(一)
			Java中事务处理的基本方法与原理,包含以下文章: (一)Java事务处理的基本问题 (二)失败的案例 (三)丑陋的案例 (四)成功的案例(自己实现一个线程安全的TransactionManager) ... 
- 《gradle 用户指南中文版》第3章 安装 gradle
			macOS 下安装 gradle,只要可以安装sdk的系统,使用sdk来安装,那么安装方式基本是一样的. Gradle在所有主要操作系统上运行,只需要安装Java JDK或JRE版本7或更高版本.要检 ... 
- JMter压力测试
			一. 压力测试场景设置 一般我们在做压力测试的时候,分单场景和混合场景,单场景也就是咱们压测单个接口的时候,多场景也就是有业务流程的情况下,比如说一个购物流程,那么这样的场景就是混合场景,就是有多个接 ... 
- IIS反向代理/Rewrite/https卸载配置
			目标,使IIS具有类似与Nginx的功能,将指定域名的请求重定向到IIS内.IIS外.其他机器上的其他端口,并且实现https卸载功能 重点预告: 1.安装最新版urlrewrite(微软开发的)插件 ... 
- erl_0015 《硝烟中的erlang》 读书笔记002 “为过载做计划”
			为过载做计划 到目前为止,我在实际工作中所碰到最常见的错误,基本上都是节点内存耗尽.而且通常都和过长的消息队列有关37.解决这类问题的方法有很多,不过只有在深入.全面的理解系统后,才能做出正确的选择. ... 
- BZOJ - 3744 Gty的妹子序列 (区间逆序对数,分块)
			题目链接 静态区间逆序对数查询,这道题用线段树貌似不好做,可以把区间分成$\sqrt n$块,预处理出两个数组:$sum[i][j]$和$inv[i][j]$,$sum[i][j]$表示前i个块中小于 ... 
