
Java基本功16课
Alesdwoniu
这个作者很懒,什么都没留下…
展开
-
父类构造器——隐式调用和显示调用
1、当创建任何Java对象时,程序总会先依次调用每个父类非静态初始化块(这个调用是隐式执行的,而且父类的静态初始化块总是会被执行)、父类构造器(总是从Objec开始)执行初始化,最后才调用本类 的非静态化初始块、构造器执行初始化。 至于调用父类的哪个构造器执行初始化,则分为如下几种情况: 1、子类构造器执行体的第一行代码使用super显示调用父类构造器,系统将根据super调...原创 2018-04-14 14:49:16 · 807 阅读 · 0 评论 -
父子实例的内存控制
1、继承成员变量和继承方法的区别: 如果子类重写了父类方法,就意味着子类里定义的方法彻底覆盖了父类里的同名方法,系统将不可能把父类里的方法转移到子类里。对于实例变量则不存在这样的现象,即使子类中定义了与父类完全同名的实例变量,这个实例变量依然不可能覆盖父类中定义的实例变量。 因为继承成员变量和继承方法之间存在这样的差别,所以对于一个引用类型的变量而言,当通过该变量访问它所引用的对象...原创 2018-04-14 17:39:21 · 238 阅读 · 0 评论 -
final修饰符
1、final语法口诀: 1、final可以修饰变量,被final修饰的变量被赋初始值之后,不能对它重新赋值。 2、final可以修饰方法,被final修饰的方法不能被重写。 3、final可以修饰类,被final修饰的类不能派生子类。2、final修饰的...原创 2018-04-15 22:54:30 · 276 阅读 · 0 评论 -
对象与内存控制——实例变量与类变量
1、Java程序的变量大体可分为成员变量和局部变量。 类体内定义的变量被称为成员变量。如果定义该成员变量时没有使用static修饰,该成员变量又称为非静态变量或实例变量;如果使用了static修饰,则该成员变量又可被成为静态变量或类变量。局部变量:包括如下三类1、形参 2、方法内的局部变量 3、代码块内的局部变量 ; 局部变量的作用时间很短,它们都被存储在方法的栈内存中。 2、Java要求定...原创 2018-04-13 14:41:30 · 296 阅读 · 0 评论 -
数组初始化
1、数组初始化有两种方式: 一、静态初始化:初始化时由程序员显示指定每个数组的初始值,由系统决定数组长度;二、动态初始化:初始化时程序员只指定数组长度,由系统为数组元素分配初始值。2、对于Java程序中所有的的引用变量,它们都不需要经过所谓的初始化操作,需要进行初始化操作的是该引用变量所引用的对象。比如,数组变量不需要进行初始化操作,而数组对象本身需要进行初始化;对象的引用变量也不需要进行初始化,...原创 2018-04-09 22:54:37 · 3346 阅读 · 0 评论 -
Java的内存回收——Java引用的种类
1、Java内存管理包括内存分配(创建Java对象时)和内存回收两个方面(回收Java对象时)。2、对于JVM的垃圾回收机制来说,是否回收一个对象的标准在于:是否还有引用变量引用该变量?只要有引用变量引用该对象,垃圾回收机制就不会回收它。3、Java语言对对象的引用有如下4种 强引用;软引用;弱引用;虚引用;强引用是Java程序中最常见的引用方式,程序创建一个对象,并把这个对象赋给一个引用...原创 2018-05-15 20:16:03 · 261 阅读 · 0 评论