• JAVA类初始化和实例初始化


    一、类初始化过程

    1、一个类要创建实例需要先创建和加载

         (1) main方法所在的类需要先加载和实例化

    2、一个子类要初始化,需要先初始化父类

    3、一个类初始化就是执行<clinit>方法

          (1) <clinit>() 方法由静态类变量显示赋值代码和静态代码块组成。

          (2) 静态类变量赋值海马和静态代码块从上到下顺序执行

          (3)<clinit>() 方法只执行一次

    二、实例初始化过程(有父类时,父类先开始初始化)

    1、实例初始化就是执行<init>()方法

           (1)<init>()方法可能重载有多个,有几个构造器就有几个<init>方法

           (2)<init>()方法由非静态实例变量显示赋值代码和非静态代码块、对应构造器代码组成

        (3)非静态实例变量显示赋值代码和非静态代码块从上到下顺序执行,构造器的代码最后执行

        (4)每次创建实例对象,调用对应构造器,执行的就是对应的<init>方法

        (5)<init>的方法的首行是super()或super(实参列表),即对应的父类<init>方法

    注:子类如果重写了父类的方法,通过子类对象调用的一定是子类重写过的代码

            非静态方法默认的调用对象是this

            this对象在构造器或者说<init>方法中就是正在创建的对象

  • 相关阅读:
    flutter,跟着官网一步一步创建第一个flutter应用
    meta标签的用处详解
    js array 对象
    javascript异步编程,promise概念
    jquery常用
    《java编程思想》:异常丢失
    Nginx均衡负载配置
    Maven将jar包安装到本地仓库
    《java编程思想》读后笔记:二,吸血鬼数字
    基于jQuery Ajax实现无刷新文件上传
  • 原文地址:https://www.cnblogs.com/pxblog/p/11567790.html
Copyright © 2020-2023  润新知