<address id="zhpbl"></address>
<noframes id="zhpbl">
<address id="zhpbl"><form id="zhpbl"><th id="zhpbl"></th></form></address>

    <em id="zhpbl"></em>

      <address id="zhpbl"><th id="zhpbl"><progress id="zhpbl"></progress></th></address>
      更多精彩內容,歡迎關注:

      視頻號
      視頻號

      抖音
      抖音

      快手
      快手

      微博
      微博

      java clone()

      文檔

      java clone()

      clone()屬于clone中的一種,有淺克隆和深克隆。在Java中,clone方法被對象調用,所以會復制對象,所謂的復制對象,首先要分配一個和源對象同樣大小的空間,在這個空間中創建一個新的對象。
      推薦度:
      導讀clone()屬于clone中的一種,有淺克隆和深克隆。在Java中,clone方法被對象調用,所以會復制對象,所謂的復制對象,首先要分配一個和源對象同樣大小的空間,在這個空間中創建一個新的對象。

      java clone()是什么,讓我們一起了解一下?

      clone()屬于clone中的一種,有淺克隆和深克隆。在Java中,clone方法被對象調用,所以會復制對象,所謂的復制對象,首先要分配一個和源對象同樣大小的空間,在這個空間中創建一個新的對象。

      要想了解clone(),首先要知道clone方法是什么?

      clone方法是返回與當前對象的一個副本對象,可以通過操作副本對象而不影響當前對象。使用clone方法需要實現Cloneable接口,并重寫Object方法中的clone方法。

      需要注意的是在clone在Object中是project修飾符。因為所有類都是Object的子類,所以如果不實現clone方法,在類中可以直接使用父類的clone方法,但是其對象在別的類中不能調用clone方法。所以必須重寫clone方法。

      那clone()在java應用中扮演者什么角色?(以淺克隆為例)

      1、被復制的類需要實現Clonenable接口(不實現的話在調用clone方法會拋出CloneNotSupportedException異常), 該接口為標記接口(不含任何方法)。

      2、覆蓋clone()方法,訪問修飾符設為public。方法中調用super.clone()方法得到需要的復制對象。

      具體操作代碼如下:

      class?Student?implements?Cloneable{??
      ????private?int?number;??
      ??
      ????public?int?getNumber()?{??
      ????????return?number;??
      ????}??
      ??
      ????public?void?setNumber(int?number)?{??
      ????????this.number?=?number;??
      ????}??
      ??????
      ????@Override??
      ????public?Object?clone()?{??
      ????????Student?stu?=?null;??
      ????????try{??
      ????????????stu?=?(Student)super.clone();??
      ????????}catch(CloneNotSupportedException?e)?{??
      ????????????e.printStackTrace();??
      ????????}??
      ????????return?stu;??
      ????}??
      }??
      public?class?Test?{??
      ????public?static?void?main(String?args[])?{??
      ????????Student?stu1?=?new?Student();??
      ????????stu1.setNumber(12345);??
      ????????Student?stu2?=?(Student)stu1.clone();??
      ??????????
      ????????System.out.println("學生1:"?+?stu1.getNumber());??
      ????????System.out.println("學生2:"?+?stu2.getNumber());??
      ??????????
      ????????stu2.setNumber(54321);??
      ??????
      ????????System.out.println("學生1:"?+?stu1.getNumber());??
      ????????System.out.println("學生2:"?+?stu2.getNumber());??
      ????}??
      }

      輸出結果:

      學生1:12345??
      學生2:12345??
      學生1:12345??
      學生2:54321

      以上就是小編今天的分享了,希望可以幫助到大家。

      文檔

      java clone()

      clone()屬于clone中的一種,有淺克隆和深克隆。在Java中,clone方法被對象調用,所以會復制對象,所謂的復制對象,首先要分配一個和源對象同樣大小的空間,在這個空間中創建一個新的對象。
      推薦度:
      為你推薦
      資訊專欄
      熱門視頻
      相關推薦
      java collect java collections java color java combobox java comet 山楂干泡水最佳搭配 java commandline java comparable接口 java compiler java config java console java console.log 復活節的由來 java const java consumer接口 統一和康師傅是哪國的 怎么刪掉word中的空白頁 微信筆記在哪里編輯 椰子怎么挑 蟑螂最怕三種克星 java clob java classloader java class.forname java class java cipher java charset java charsequence java charat java channel iPad怎么重啟 java cglib 平板如何錄屏 java ceiling java callback java calendar獲取當前時間 蘋果13怎么開機 java calculate java byte取值范圍 java bytebuffer java bundle
      Top 少妇高潮太爽了在线视频