学习 JAVA 第五天 ---- 初始化与清理

本贴最后更新于 2829 天前,其中的信息可能已经渤澥桑田

关于想法

最近可能因为小宝宝要出生,总是有点心神不宁,看书的时候效率也没那么高了,敲这行字的时候,老婆把手伸到衣领子里面.

又定了个决定:

下个月开始(为什么下个月而不是现在,有原因的),晚上有时间不打游戏,去健身房搞事儿.

初始化与清理

讲实话,这章值得记录的真的很多,废话不多说,上干货:

构造器

定义:构造器是个什么玩意呢?构造器是为了做到在对象实例化的时候就被初始化的效果,如下

重载

重载不多说,大家也都知道的,所以仅做如下注意点记录:

1. 重载的作用是为了实现同一个方法名处理不同的传参类型

2. 重载的区分方法是传参类型差异

3. 切记重载不可以由返回值区分

4. 重载传参可以为可变参数,但是最好不要这样,因为可变参数支持无参,那么若有三个重载传参都是单纯的可变参数,那么不传参的调用方式就不知道调用的是哪个方法了.

this 指针

首先 this 指针的意思是调用方法的对象.

需要注意如下几点:

1. 想要在构造其中调用构造器(代码复用),可以用 this(传参)

2. 上述方法注意:在构造器中调用构造器的时候,只能存在一次,并且调用必须在这个构造器的顶端,否则报错.

3. 除了在类的构造器中使用 this 调用其它构造器。否在则一个类中的其它地方不可以调用构造器

初始化

成员初始化

首先,什么叫做初始化,初始化是指在创建一个类的实例的时候,不仅要有这个类的空间,还得存在这个类的"空白状态"(无构造函数的情况).

那么如果一个对象没有初始化的话,他被声明后其实只是一个 null

他的注意点如下:

指定初始化

即在定义成员变量的时候直接赋值

构造器初始化(** 重点 **)

初始化顺序:

1. 按照变量定义的先后执行初始化

2. 任何方法或构造器中,都是初始化方法先执行,详情见上面的示例代码

静态方法的初始化

1. 静态对象 A 属于某个对象 B 的时候,仅当 B 初始化的时候,A 才会被初始化,并且切记,只会被初始化一次,见上面的示例

2. 在对象中,对象初始化的顺序遵循先静态后非静态

显式的静态初始化


public class DW{

  static int i;

  static {

  i = 47;

  }

}

  • 日记
    68 引用 • 278 回帖 • 1 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3190 引用 • 8214 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...