《Java面向对象编程》

《Java面向对象编程》

第11章 对象的生命周期

11.1  创建对象的方式

  1. 用new语句创建对象
  2. 运用反射手段,调用java.lang.Class 或者 java.lang.Constructor 类的newInstance()实例方法。
  3. 调用对象的clone()方法。
  4. 运用反序列化手段

11.2 构造方法

  在多数情况下,初始化对象的最终步骤是去调用这个对象的构造方法。构造方法负责对象的初始化工作,为实例变量赋予合适的初始化值。

  构造方法满足的语法规则:

  • 方法名必须与类名相同
     1 public class Sample{
     2         private int x;
     3         public Sample(){   //不带参数的构造方法
     4               this(1);
     5         }
     6         public Sample(int x){   //带参数的构造方法
     7              this.x = x;
     8         }
     9         
    10        public int Sample(int x ){ //不是构造方法
    11              return x++;
    12        }
    13 
    14 }                        
    15 
    16     
  • 不要声明返回类型
  • 不能被static,final,synchronized,abstract和native修饰

   构造方法不能被子类继承,所以用final和abstract修饰没有意义。

   构造方法用于初始化一个新建的对象,所以用static修饰没有意义。

   多个线程不会不会同时创建内存地址相同的同一个对象,因此用synchronized修饰没有意义。

   此外,java语言不支持native类型的构造方法。

 第15章  Java集合

  Java数组的长度是固定的,在同一个数组中只能存放相同类型的数据。数组可以存放基本类型的数据,也可以存放引用类型的数据。在创建数组时,必须指明数组的长度,数组一旦被创建,其长度就不能被改变。在许多应用场合,一组数据的数目是不固定的,比如一个单位的员工数目是变化的,有老员工个跳槽,也有新员工的加入。

  为了使程序能方便的存储和操纵数目不固定的一组数据,JDK类库提供了Java集合,所有Java集合类都位于java,util包中。与Java数组不同,Java集合中不能存放基本数据类型,而只能存放对象的引用。为了便利:“集合中对象的引用”简称为“集合中的对象”

Java中的集合主要分为4种类型:

  • set(集):集合中的对象不按特定方式排序,并且没有重复的对象。它的有些实现类能对集合中的对象按特定方式排序。
  • List(列表):集合中的对象按照索引位置排序,可以有重复的对象,允许按照对象在集合中的索引位置检索对象。List与数组有些相似。
  • Queue(队列):集合中的对象按照先进先出的规则来排列。在队列的末尾添加元素,在队列的头部删除元素。可以有重复的对象。双向队列则允许在队列的末尾和头部添加和删除元素。
  • Map(映射):集合中的每一个元素包含一对键(Key)对象和值(Value)对想,集合中没有重复的键对象,值对象可以重复。它的有些实现类能对集合中的键对象进行排序。

                 《Java面向对象编程》

Java集合的4种类型