zoukankan      html  css  js  c++  java
  • 五、初始化与清理

    一、创建对象时,如果其类有构造器,Java就会在用户有能力操作对象之前自动调用相应的构造器,从而保证了初始化的进行。

    二、每个重载方法都必须有独一无二的参数类型列表

      如果传入的数据类型小于方法中声明的形式参数类型,实际数据类型就会被提升。

      如果传入的数据类型较大,就得通过类型转换来执行窄化转换。

    三、如果写的类中没有构造器,编译器就会自动帮你创建一个默认构造器。

    四、this关键字只能在方法内部使用,表示对“调用方法的那个对象”的引用

      this关键字也可以用于将当前对象传递给其他方法

      使用this在一个构造器中调用另外一个构造器,除构造器内之外,编译器禁止在其他任何方法中调用构造器,并且必须将构造器调用置于最起始处。

      static方法就是没有this的方法,在static方法的内部不能调用非静态方法。

    五、1.对象可能不被垃圾回收

      2.垃圾回收并不等于“析构”

      3.垃圾回收只于内存有关

      Java中允许在类中定义一个名为finalize()的方法清理内存:一旦垃圾回收器准备好释放对象占用的存储空间,首先调用该方法,并且在下一次垃圾回收动作发生时,才会真正回收对象占用的内存,但是要尽量少地使用这个方法。

      Java虚拟机将采用一种自适应的垃圾回收技术,即 停止-复制 以及 标记-清扫 (<Java编程思想> P90-91)

    六、如果一个域是静态的基本类型域,且也没有对它进行初始化,那么他就会获得基本类型的标准初值,如果他是一个对象引用,他的默认初始化值为null

      初始化的顺序是先静态对象,而后是非静态对象,静态对象的初始化只执行一次。

      Java允许将多个静态初始化动作组织成一个特殊的“静态子句”

    七、数组初始化 int[] a1或者int a2[]

      Arrays.toString()方法属于java.util标准类库,它将产生一位数组的可打印版本。

      可变参数列表: Object[] args 或者 Integer... args 等

      可变参数列表与自动包装机制可以和睦相处

    八、使用enum创建枚举类型

      创建enum时,编译器会自动添加一些有用的特性,会自动创建toString()方法,可以显示实例的名字,ordinal()方法用于表示某个enum常量的声明顺序

  • 相关阅读:
    「 HDU P3336 」 Count the string
    Luogu P4016 「 网络流 24 题 」负载平衡问题
    『 学习笔记 』网络最大流
    Luogu P4014 「 网络流 24 题 」分配问题
    Loj #6000.「 网络流 24 题 」搭配飞行员
    牛客练习赛25 C 再编号
    线段树--从入门到入土
    网络流学习--费用流
    网络流--最大流
    五校联考解题报告
  • 原文地址:https://www.cnblogs.com/zzy9669/p/4489242.html
Copyright © 2011-2022 走看看