設計模式之原型模式

       原型模式的思想就是將一個對象作爲原型,對其進行復制、克隆,產生一個和原對象類似的新對象;複製過程可分爲淺複製和深複製。

       淺複製是指直接調用父類(即Object類)的clone方法(super.clone()),該方法是本地(native)方法,調用該方法clone出來的新對象,基本數據類型的屬性變量是新創建的,在不同的堆內存中,但是新對象的引用類型屬性變量則和原對象保持一致,指向相同的引用類型對象的地址;

       深複製是指新創建出來的對象,它的基本數據類型的屬性變量和引用類型的屬性變量都是全新的,即引用類型的變量指向的對象,也會新創建一份,然後該原型對象指向它。深複製主要通過對象流的形式,先將原對象寫入二進制對象流中,然後再讀出該對象流,獲取的便是深複製的一份全新的對象流。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章