當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Java.lang.Enum.clone()用法及代碼示例



描述

這個java.lang.Enum.clone() 方法保證枚舉永遠不會被克隆,這對於保留它們的 "singleton" 狀態是必要的。

聲明

以下是聲明java.lang.Enum.clone()方法

protected final Object clone() throws CloneNotSupportedException

參數

NA

返回值

此方法不返回任何值。

異常

CloneNotSupportedException- 如果對象的類不支持 Cloneable 接口。覆蓋 clone 方法的子類也可以拋出此異常以指示無法克隆實例。

示例

下麵的例子展示了 java.lang.Enum.clone() 方法的用法。

package com.tutorialspoint;

import java.lang.*;

// enum showing Mobile prices
enum Mobile {
   Samsung(400), Nokia(250);
  
   int price;
   Mobile(int p) {
      price = p;
   }
   int showPrice() {
      return price;
   } 
}

public class EnumDemo {

   public static void main(String args[]) {

      System.out.println("Enums can never be cloned...");
      EnumDemo t = new EnumDemo() {
         protected final Object clone() throws CloneNotSupportedException {
            throw new CloneNotSupportedException();
         }
      }; 

      System.out.println("CellPhone List:");
      for(Mobile m:Mobile.values()) {
         System.out.println(m + " costs " + m.showPrice() + " dollars");
      }                    
   }
}

讓我們編譯並運行上麵的程序,這將產生以下結果——

Enums can never be cloned...
CellPhone List:
Samsung costs 400 dollars
Nokia costs 250 dollars

相關用法


注:本文由純淨天空篩選整理自 Java.lang.Enum.clone() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。