public abstract class Preferences extends Object
èšå®ããŒãã¯2ã€ã®åå¥ã®ããªãŒã§æ§æãããŸããäžæ¹ã¯ãŠãŒã¶ãŒèšå®çšãããäžæ¹ã¯ã·ã¹ãã èšå®çšã§ãã ããããã®ãŠãŒã¶ãŒã¯åã ã®ãŠãŒã¶ãŒèšå®ããªãŒãæã¡ããã®ã·ã¹ãã ã®ãã¹ãŠã®ãŠãŒã¶ãŒã¯ã·ã¹ãã èšèšããªãŒãæã¡ãŸãã ãŠãŒã¶ãŒèšå®ããªãŒãšã·ã¹ãã èšå®ããªãŒã®å®çŸ©ã¯ãå®è£ ããšã«ç°ãªããŸãã ãŠãŒã¶ãŒèšå®ããªãŒã«ã¯ããã©ã³ãéžæãã«ã©ãŒéžæãç¹å®ã®ã¢ããªã±ãŒã·ã§ã³ã«èšå®ãããŠã£ã³ããŠäœçœ®ããµã€ãºãªã©ãæ ŒçŽãããŸãã ã·ã¹ãã èšå®ããªãŒã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«æ§æããŒã¿ãªã©ãæ ŒçŽãããŸãã
èšå®ããªãŒå ã®ããŒãã«ã¯ãéå±€ãã¡ã€ã«ã»ã·ã¹ãã ã®ãã£ã¬ã¯ããªãšåãæ¹æ³ã§ååãä»ããããŸãã èšå®ããªãŒã®åããŒãã«ã¯ãããŒãå (äžæã§ããå¿ èŠã¯ãªã)ãäžæã®çµ¶å¯Ÿãã¹åãããã³åäžäœããŒã(ãã®ããŒãèªäœãå«ã)ãèµ·ç¹ãšããçžå¯Ÿãã¹åãå²ãåœãŠãããŸãã
ã«ãŒãã»ããŒãã®ããŒãåã¯ãç©ºã®æåå("")ã§ãã ã»ãã®ããŒãã®ååã¯ãäœææã«ä»»æã«æå®ã§ããŸãã ããŒãåã«ã¯ä»»æã®æåã䜿çšã§ããŸãããç©ºã®æååã¯æå®ã§ãããã¹ã©ãã·ã¥æå('/')ã¯äœ¿çšã§ããŸããã
ã«ãŒãã»ããŒãã®çµ¶å¯Ÿãã¹åã¯ãã/ãã§ãã ã«ãŒãã»ããŒãã®åã®çµ¶å¯Ÿãã¹åã¯ãã/ã+<ããŒãå>ã«ãªããŸãã ãã®ä»ã®ããŒãã®çµ¶å¯Ÿãã¹åã¯ã<芪ã®çµ¶å¯Ÿãã¹å>+ã/ã+<ããŒãå>ã«ãªããŸãã 絶察ãã¹åã¯ãåžžã«ã¹ã©ãã·ã¥æåããå§ãŸããŸãã
ããŒãnã®çžå¯Ÿãã¹åã¯ãäžäœããŒãaãèµ·ç¹ãšããå Žåãnã®çµ¶å¯Ÿãã¹åãäœæãããšãã«aã®çµ¶å¯Ÿãã¹åã«è¿œå ãããæååã«ãªããŸããå é ã«ã¹ã©ãã·ã¥æåãããå Žåã¯åé€ããŸãã æ¬¡ã®ç¹ã«æ³šæããŠãã ããã
次ã®ç¹ã«ã泚æããŠãã ããã
èšå®ããŒã¿ã倿Žããã¡ãœããã¯ãã¹ãŠãéåæã«å®è¡ã§ããŸããã€ãŸããå®è¡åŸã¯ãã ã¡ã«åŸ©åž°ãã倿Žã¯å®è£ ã«äŸåããé å»¶ãçµéããŠããæ°žç¶ãããã³ã°ã»ã¹ãã¢ã«éãããŸãã flushã¡ãœããã¯ãæŽæ°ããŒã¿ããããã³ã°ã»ã¹ãã¢ã«åŒ·å¶çã«æžã蟌ãã§ãåæããšããšãã«äœ¿çšããŸãã Javaä»®æ³ãã·ã³ãæ£åžžçµäºããŠããä¿çäžã®æŽæ°ã¯å€±ãããŸããããã®ãããçµäºæã«æç€ºçã«flushãåŒã³åºããŠãä¿çäžã®æŽæ°ãä¿æããå¿ èŠã¯ãããŸããã
Preferencesãªããžã§ã¯ãããèšå®ãèªã¿èŸŒããšãã¯ãããã©ã«ãå€ãæå®ããŠã¡ãœãããåŒã³åºãå¿
èŠããããŸãã èªã¿èŸŒãåã«å€ãèšå®ãããŠããªãã£ãå ŽåãŸãã¯ãããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå Žåã¯ããã®ããã©ã«ãå€ãè¿ãããŸãã ããã¯ããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªããªã£ãå Žåã§ããã¢ããªã±ãŒã·ã§ã³ãåäœã§ããããã«ããããã§ã(ãã ããæ©èœããããã«äœäžãã)ã äžéšã®ã¡ãœãã(flushãªã©)ã®ã»ãã³ãã£ãã¯ã¹ã§ã¯ããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå Žåã«ã¢ããªã±ãŒã·ã§ã³ãåäœããªããªããŸãã éåžžã®ã¢ããªã±ãŒã·ã§ã³ã§ã¯ããããã®ã¡ãœãããåŒã³åºãå¿
èŠããããŸããããããã¯ãBackingStoreExceptionãã¹ããŒããããã«å®£èšããŠããããšã§èå¥ã§ããŸãã
ãã®ã¯ã©ã¹ã®ã¡ãœããã¯ã1ã€ã®JVMã®è€æ°ã®ã¹ã¬ãããã䞊è¡ããŠåŒã³åºãããšãã§ããŸãããã®ãšããå€éšçã«åæåããå¿ èŠã¯ãããŸãããå®è¡çµæã¯ã鿬¡å®è¡ããå Žåãšç䟡ã§ãã ãã®ã¯ã©ã¹ãè€æ°ã®JVMã«ãã£ãŠåæã«äœ¿çšãããèšå®ããŒã¿ãåããããã³ã°ã»ã¹ãã¢ã«æ ŒçŽãããå ŽåãããŒã¿ã»ã¹ãã¢ã¯ç Žå£ããŸããããèšå®ããŒã¿ã®äžè²«æ§ã¯ä¿èšŒãããŸããã
ãã®ã¯ã©ã¹ã«ã¯ããšã¯ã¹ããŒã/ã€ã³ããŒãæ©èœããããèšå®ãXMLããã¥ã¡ã³ãã«ããšã¯ã¹ããŒããããããèšå®ãèšè¿°ãããXMLããã¥ã¡ã³ããã·ã¹ãã ã«ãã€ã³ããŒããããããšãã§ããŸãã ãã®æ©èœã¯ãèšå®ããªãŒã®ãã¹ãŠãŸãã¯äžéšãããã¯ã¢ãããããã®ããã¯ã¢ããã埩å ãããšãã«äœ¿çšããŸãã
ãã®XMLããã¥ã¡ã³ãã§ã¯ã次ã®DOCTYPEã宣èšãããŸãã
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
èšå®ããšã¯ã¹ããŒã/ã€ã³ããŒããããšãã«ãã·ã¹ãã URI (http://java.sun.com/dtd/preferences.dtd)ã«ã¯ã¢ã¯ã»ã¹ããŸãããã·ã¹ãã URIã¯ãDTDãäžæã«èå¥ããæååãšããŠäœ¿çšãããŸãããã®å
å®¹ã¯æ¬¡ã®ãšããã§ãã
<?xml version="1.0" encoding="UTF-8"?>
<!-- DTD for a Preferences tree. -->
<!-- The preferences element is at the root of an XML document
representing a Preferences tree. -->
<!ELEMENT preferences (root)>
<!-- The preferences element contains an optional version attribute,
which specifies version of DTD. -->
<!ATTLIST preferences EXTERNAL_XML_VERSION CDATA "0.0" >
<!-- The root element has a map representing the root's preferences
(if any), and one node for each child of the root (if any). -->
<!ELEMENT root (map, node*) >
<!-- Additionally, the root contains a type attribute, which
specifies whether it's the system or user root. -->
<!ATTLIST root
type (system|user) #REQUIRED >
<!-- Each node has a map representing its preferences (if any),
and one node for each child (if any). -->
<!ELEMENT node (map, node*) >
<!-- Additionally, each node has a name attribute -->
<!ATTLIST node
name CDATA #REQUIRED >
<!-- A map represents the preferences stored at a node (if any). -->
<!ELEMENT map (entry*) >
<!-- An entry represents a single preference, which is simply
a key-value pair. -->
<!ELEMENT entry EMPTY >
<!ATTLIST entry
key CDATA #REQUIRED
value CDATA #REQUIRED >
åPreferenceså®è£
ã«ã¯ãPreferencesFactoryå®è£
ãé¢é£ä»ããå¿
èŠããããŸãã ã«ãŒãèšå®ããŒããçæãããšãã«PreferencesFactoryå®è£
ãæå®ããã«ã¯ãJava(TM) SEå®è£
ã«ãã®æ¹æ³ãèšå®ããå¿
èŠããããŸãã ããã«ãã£ãŠã管çè
ã¯ããã©ã«ãã®preferenceså®è£
ã代æ¿å®è£
ã«çœ®ãæããããšãã§ããŸãã
å®è£ ã«ããã£ãŠã®ããŒã: Sunã®JREã§ã¯ãPreferencesFactoryã®å®è£ ã¯æ¬¡ã®ããã«å®æœãããŸãã
ã·ã¹ãã ã»ããããã£java.util.prefs.PreferencesFactoryãå®çŸ©ãããŠããå Žåããããã¯ã©ã¹ãå®è£ ããPreferencesFactoryã€ã³ã¿ãã§ãŒã¹ã®å®å šæå®åãšèŠãªãããŸãã ãã®åŸãã¯ã©ã¹ãããŒããããã€ã³ã¹ã¿ã³ã¹ãäœæãããŸãã
ã·ã¹ãã ã»ã¯ã©ã¹ã»ããŒããŒã®èªèããjarãã¡ã€ã«ã«PreferencesFactoryå®è£
ã¯ã©ã¹ã»ãã¡ã€ã«ãã€ã³ã¹ããŒã«ãããŠããŠããã®jarãã¡ã€ã«ã«ãªãœãŒã¹ã»ãã£ã¬ã¯ããªMETA-INF/serviceså
ã®java.util.prefs.PreferencesFactoryãšãããããã€ãæ§æãã¡ã€ã«ãå«ãŸããŠããå Žåããã®ãã¡ã€ã«ã«æå®ãããŠããæåã®ã¯ã©ã¹åã䜿çšãããŸãã ãã®ãããªjarãã¡ã€ã«ã2ã€ä»¥äžæå®ãããå Žåã¯ãæåã«æ€åºããããã¡ã€ã«ã䜿çšãããŸãã ãã®åŸãã¯ã©ã¹ãããŒããããã€ã³ã¹ã¿ã³ã¹ãäœæãããŸãã
æåŸã«ãåè¿°ã®ã·ã¹ãã ã»ããããã£ãšæ¡åŒµjarãã¡ã€ã«ã®ã©ã¡ããæå®ãããŠããªãå Žåã¯ããã®ãšã䜿çšãããŠãããã©ãããã©ãŒã ã«å¯ŸããŠã·ã¹ãã ã»ã¯ã€ãã®ããã©ã«ãã§ããPreferencesFactoryå®è£ ãããŒããããã€ã³ã¹ã¿ã³ã¹ãäœæãããŸãã
| 修食åãšå | ãã£ãŒã«ã | 説æ |
|---|---|---|
static int |
MAX_KEY_LENGTH |
ããŒãšããŠäœ¿çšã§ããæååã®æå€§é·(80æå)ã§ãã
|
static int |
MAX_NAME_LENGTH |
ããŒãåã®æå€§é·(80æå)ã§ãã
|
static int |
MAX_VALUE_LENGTH |
å€ãšããŠäœ¿çšã§ããæååã®æå€§é·(8192æå)ã§ãã
|
| 修食å | ã³ã³ã¹ãã©ã¯ã¿ | 説æ |
|---|---|---|
protected |
Preferences() |
å¯äžã®ã³ã³ã¹ãã©ã¯ã¿ã§ãã
|
| 修食åãšå | ã¡ãœãã | 説æ |
|---|---|---|
abstract String |
absolutePath() |
ãã®èšå®ããŒãã®çµ¶å¯Ÿãã¹åãè¿ããŸãã
|
abstract void |
addNodeChangeListener(NodeChangeListener ncl) |
æå®ããããªã¹ããŒããã®ããŒãã®ããŒã倿Žã€ãã³ããåä¿¡ããããã«ç»é²ããŸãã
|
abstract void |
addPreferenceChangeListener(PreferenceChangeListener pcl) |
æå®ããããªã¹ããŒããã®èšå®ããŒãã«å¯Ÿããèšå®å€æŽã€ãã³ããåä¿¡ããããã«ç»é²ããŸãã
|
abstract String[] |
childrenNames() |
ãã®èšå®ããŒãã®åã®åå(ãã®ããŒããèµ·ç¹ãšããçžå¯Ÿå)ãè¿ããŸãã
|
abstract void |
clear() |
ãã®èšå®ããŒãå
ã®èšå®(ããŒãšå€ã®ãã¢ã®é¢é£ä»ã)ããã¹ãŠåé€ããŸãã
|
abstract void |
exportNode(OutputStream os) |
ãã®ããŒã(ãã®äžäœããŒãã¯å«ãŸãªã)ã«å«ãŸããŠãããã¹ãŠã®èšå®ã衚ãXMLããã¥ã¡ã³ãããæå®ãããåºåã¹ããªãŒã ã«çºè¡ããŸãã
|
abstract void |
exportSubtree(OutputStream os) |
ãã®ããŒããšãã®ãã¹ãŠã®äžäœããŒãã«å«ãŸãããã¹ãŠã®èšå®ã衚ãXMLããã¥ã¡ã³ããçºè¡ããŸãã
|
abstract void |
flush() |
ãã®èšå®ããŒããšãã®äžäœããŒãã®å
容ã«å¯Ÿãããã¹ãŠã®å€æŽããæ°žç¶ã¹ãã¢ã«åŒ·å¶çã«æ ŒçŽããŸãã
|
abstract String |
get(String key, String def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããå€ãè¿ããŸãã
|
abstract boolean |
getBoolean(String key, boolean def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãbooleanå€ãè¿ããŸãã
|
abstract byte[] |
getByteArray(String key, byte[] def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãbyteé
åå€ãè¿ããŸãã
|
abstract double |
getDouble(String key, double def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãdoubleå€ãè¿ããŸãã
|
abstract float |
getFloat(String key, float def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãfloatå€ãè¿ããŸãã
|
abstract int |
getInt(String key, int def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãintå€ãè¿ããŸãã
|
abstract long |
getLong(String key, long def) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããæååã衚ãlongå€ãè¿ããŸãã
|
static void |
importPreferences(InputStream is) |
XMLããã¥ã¡ã³ãã«ãã£ãŠè¡šããããã¹ãŠã®èšå®ããæå®ãããå
¥åã¹ããªãŒã ããã€ã³ããŒãããŸãã
|
abstract boolean |
isUserNode() |
ãã®èšå®ããŒãããŠãŒã¶ãŒèšå®ããªãŒã«ããå Žåã¯ãtrueãè¿ããŸããã·ã¹ãã èšå®ããªãŒã«ããå Žåã¯ãfalseãè¿ããŸãã
|
abstract String[] |
keys() |
ãã®èšå®ããŒãå
ã«é¢é£ä»ããããŠããå€ãæã€ããŒããã¹ãŠè¿ããŸãã
|
abstract String |
name() |
ãã®èšå®ããŒãã®åå(ãã®èŠªãèµ·ç¹ãšããçžå¯Ÿå)ãè¿ããŸãã
|
abstract Preferences |
node(String pathName) |
ãã®ããŒããšåãããªãŒã«ããååä»ãèšå®ããŒããè¿ããŸãããã®ããŒããšãã®äžäœããŒããååšããªãå Žåã¯ããããããã¹ãŠäœæããŸãã
|
abstract boolean |
nodeExists(String pathName) |
ååä»ãèšå®ããŒãããã®ããŒããšåãããªãŒã«ååšããå Žåã¯ãtrueãè¿ããŸãã
|
abstract Preferences |
parent() |
ãã®èšå®ããŒãã®èŠªãè¿ãããã®ããŒããã«ãŒãã®å Žåã¯nullãè¿ããŸãã
|
abstract void |
put(String key, String value) |
ãã®èšå®ããŒãã§æå®ãããããŒã«ãæå®ãããå€ãé¢é£ä»ããŸãã
|
abstract void |
putBoolean(String key, boolean value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããbooleanå€ã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
putByteArray(String key, byte[] value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããbyteé
åã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
putDouble(String key, double value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããdoubleå€ã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
putFloat(String key, float value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããfloatå€ã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
putInt(String key, int value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããintå€ã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
putLong(String key, long value) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«ãæå®ãããlongå€ã衚ãæååãé¢é£ä»ããŸãã
|
abstract void |
remove(String key) |
ãã®èšå®ããŒãå
ã®æå®ãããããŒã«é¢é£ä»ããããŠããå€ãããå Žåã¯ããããåé€ããŸãã
|
abstract void |
removeNode() |
ãã®èšå®ããŒããšãã®äžäœããŒãããã¹ãŠåé€ããåé€ããããŒãã«å«ãŸããŠããèšå®ããã¹ãŠç¡å¹ã«ããŸãã
|
abstract void |
removeNodeChangeListener(NodeChangeListener ncl) |
æå®ãããNodeChangeListenerãåé€ããŠã倿Žã€ãã³ãã®åä¿¡ã忢ããŸãã
|
abstract void |
removePreferenceChangeListener(PreferenceChangeListener pcl) |
æå®ãããèšå®å€æŽãªã¹ããŒãåé€ããŠãèšå®å€æŽã€ãã³ãã®åä¿¡ã忢ããŸãã
|
abstract void |
sync() |
syncãåŒã³åºããšãæåã«ãVMããæ°žç¶ã¹ãã¢ã«æ ŒçŽããã倿Žããã®èšå®ããŒããšãã®äžäœããŒãã«ãã¹ãŠåæ ãããŸãã
|
static Preferences |
systemNodeForPackage(Class<?> c) |
ã·ã¹ãã èšå®ããªãŒããèšå®ããŒããè¿ããŸãããã®ã·ã¹ãã èšå®ããªãŒã¯ãèŠåã«åŸã£ãŠãæå®ãããã¯ã©ã¹ã®ããã±ãŒãžã«é¢é£ä»ããããŠããŸãã
|
static Preferences |
systemRoot() |
ã·ã¹ãã ã®ã«ãŒãèšå®ããŒããè¿ããŸãã
|
abstract String |
toString() |
ãã®èšå®ããŒãã®æåå衚çŸããæ¬¡ã®åŒã§èšç®ããããã®ããã«è¿ããŸãã(this.isUserNode() ? "User" :"System") + " Preference Node:" + this.absolutePath()ã
|
static Preferences |
userNodeForPackage(Class<?> c) |
åŒåºãåŽãŠãŒã¶ãŒã®èšå®ããªãŒããèšå®ããŒããè¿ããŸãããã®ãŠãŒã¶ãŒèšå®ããªãŒã¯ãèŠåã«åŸã£ãŠãæå®ãããã¯ã©ã¹ã®ããã±ãŒãžã«é¢é£ä»ããããŠããŸãã
|
static Preferences |
userRoot() |
åŒåºãåŽãŠãŒã¶ãŒã®ã«ãŒãèšå®ããŒããè¿ããŸãã
|
public static final int MAX_KEY_LENGTH
public static final int MAX_VALUE_LENGTH
public static final int MAX_NAME_LENGTH
protected Preferences()
public static Preferences userNodeForPackage(Class<?> c)
ãã®èŠåã¯ãååãªãã®ããã±ãŒãžã«ã¯é©çšãããŸãããååãªãã®ããã±ãŒãžã«é¢é£ä»ããããŠããèšå®ããŒãã¯ã<unnamed>ã«ãªããŸãã ãã®ããŒãã¯ãé·æéã®äœ¿çšã«ã¯é©ããŠããŸããããããã±ãŒãžã«ãŸã å±ããŠããªãéçºåææ®µéã®ããã°ã©ã ãäœ¿ãæšãŠã®ããã°ã©ã ã§äœ¿çšã§ããŸãã éèŠãªããŒã¿ã¯ãã®ããŒãã«æ ŒçŽããªãã§ãã ãããããã䜿çšãããã¹ãŠã®ããã°ã©ã ã«ãã£ãŠå ±æãããŠããããã§ãã
Fooã¯ã©ã¹ã䜿çšããŠååãªãã®ããã±ãŒãžã«é¢ããèšå®ã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¬¡ã®æ¹æ³ã§èšå®ããŒããååŸããŸãã
static Preferences prefs = Preferences.userNodeForPackage(Foo.class);
ãã®ã€ãã£ãªã ã䜿ãã°ãæååã䜿ã£ãŠèšå®ããŒããèšè¿°ããå¿
èŠããªããªããããå®è¡æã«ãšã©ãŒãçºçããå¯èœæ§ãæžããŸãã (ã¯ã©ã¹åã®ç¶Žããééã£ãå Žåã¯éåžžãã³ã³ãã€ã«æã«ãšã©ãŒãçºçããã)
ãã®ã¡ãœãããåŒã³åºãããšãã«ãè¿ãããããŒããšãã®äžäœããŒããååšããªãã£ãå Žåã¯ããããã®ããŒããäœæãããŸãã è¿ãããããŒãããã®åŒåºã以åã«ååšããªãã£ãå Žåããã®åŒåºãã«ãã£ãŠäœæãããããŒããšãã®äžäœããŒãã¯ãè¿ãããããŒã(ãããã¯ãã®äžäœããŒããŸãã¯äžäœããŒã)äžã§flushã¡ãœãããåŒã³åºããããšãã«ãæç¶çã«ãªããŸãã
c - ãŠãŒã¶ãŒèšå®ããŒããå¿
èŠãšããããã±ãŒãžã®ã¯ã©ã¹ãNullPointerException - cãnullã§ããå ŽåãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("preferences")ãæåŠããå ŽåãRuntimePermissionpublic static Preferences systemNodeForPackage(Class<?> c)
ãã®èŠåã¯ãååãªãã®ããã±ãŒãžã«ã¯é©çšãããŸãããååãªãã®ããã±ãŒãžã«é¢é£ä»ããããŠããèšå®ããŒãã¯ã<unnamed>ã«ãªããŸãã ãã®ããŒãã¯ãé·æéã®äœ¿çšã«ã¯é©ããŠããŸããããããã±ãŒãžã«ãŸã å±ããŠããªãéçºåææ®µéã®ããã°ã©ã ãäœ¿ãæšãŠã®ããã°ã©ã ã§äœ¿çšã§ããŸãã éèŠãªããŒã¿ã¯ãã®ããŒãã«æ ŒçŽããªãã§ãã ãããããã䜿çšãããã¹ãŠã®ããã°ã©ã ã«ãã£ãŠå ±æãããŠããããã§ãã
Fooã¯ã©ã¹ã䜿çšããŠååãªãã®ããã±ãŒãžã«é¢ããèšå®ã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¬¡ã®æ¹æ³ã§èšå®ããŒããååŸããŸãã
static Preferences prefs = Preferences.systemNodeForPackage(Foo.class);ãã®ã€ãã£ãªã ã䜿ãã°ãæååã䜿ã£ãŠèšå®ããŒããèšè¿°ããå¿ èŠããªããªããããå®è¡æã«ãšã©ãŒãçºçããå¯èœæ§ãæžããŸãã (ã¯ã©ã¹åã®ç¶Žããééã£ãå Žåã¯éåžžãã³ã³ãã€ã«æã«ãšã©ãŒãçºçããã)
ãã®ã¡ãœãããåŒã³åºãããšãã«ãè¿ãããããŒããšãã®äžäœããŒããååšããªãã£ãå Žåã¯ããããã®ããŒããäœæãããŸãã è¿ãããããŒãããã®åŒåºã以åã«ååšããªãã£ãå Žåããã®åŒåºãã«ãã£ãŠäœæãããããŒããšãã®äžäœããŒãã¯ãè¿ãããããŒã(ãããã¯ãã®äžäœããŒããŸãã¯äžäœããŒã)äžã§flushã¡ãœãããåŒã³åºããããšãã«ãæç¶çã«ãªããŸãã
c - ã·ã¹ãã èšå®ããŒããå¿
èŠãšããããã±ãŒãžã®ã¯ã©ã¹ãNullPointerException - cãnullã§ããå ŽåãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("preferences")ãæåŠããå ŽåãRuntimePermissionpublic static Preferences userRoot()
SecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("preferences")ãæåŠããå ŽåãRuntimePermissionpublic static Preferences systemRoot()
SecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("preferences")ãæåŠããå ŽåãRuntimePermissionpublic abstract void put(String key, String value)
key - æå®ã®å€ãé¢é£ä»ããããããŒãvalue - æå®ã®ããŒã«é¢é£ä»ããããå€ãNullPointerException - ããŒãŸãã¯å€ãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãŸãã¯value.lengthãMAX_VALUE_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãpublic abstract String get(String key, String def)
äžéšã®å®è£ ã¯ãããã©ã«ãå€ããã®ãããã³ã°ã»ã¹ãã¢ã«æ ŒçŽããŸãã æå®ãããããŒã«é¢é£ä»ããããŠããå€ããªãå Žåã§ããæ ŒçŽæžã¿ããã©ã«ããããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠæ ŒçŽæžã¿ããã©ã«ããè¿ãããŸãã
key - é¢é£ä»ããããŠããå€ãè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå Žåã (defã«ã¯nullå€ãæå®ã§ããã) public abstract void remove(String key)
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããŠãããæå®ãããèšå®ã«æ ŒçŽæžã¿ããã©ã«ããååšããå Žåã¯ããã®åŒåºãã«ããæ ŒçŽæžã¿ããã©ã«ãã䜿çšãããããã«ãªããŸããã€ãŸããåŸç¶ã®getåŒåºãã§ã¯æ ŒçŽæžã¿ããã©ã«ããè¿ãããŸãã
key - ãããã³ã°ãèšå®ããŒãããåé€ãããããŒãNullPointerException - keyãnullã§ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãpublic abstract void clear()
throws BackingStoreException
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããŠãããèšå®éå±€å ã®ãã®ããŒãã«æ ŒçŽæžã¿ããã©ã«ããå«ãŸããŠããå Žåã¯ããã®åŒåºãã«ããæ ŒçŽæžã¿ããã©ã«ãã䜿çšãããããã«ãªããŸããã€ãŸããåŸç¶ã®getåŒåºãã§ã¯æ ŒçŽæžã¿ããã©ã«ããè¿ãããŸãã
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãremoveNode()public abstract void putInt(String key, int value)
Integer.toString(int)ã«æž¡ãããå Žåã«è¿ãããæååã§ãã ãã®ã¡ãœããã¯ãgetInt(java.lang.String, int)ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - keyãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetInt(String,int)public abstract int getInt(String key, int def)
Integer.parseInt(String)ã«ãã£ãп޿°ã«å€æãããŸãã ããŒã«é¢é£ä»ããããŠããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ãæž¡ããããšãã«Integer.parseInt(String)ãNumberFormatExceptionãã¹ããŒããå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã ãã®ã¡ãœããã¯ãputInt(java.lang.String, int)ãšçµã¿åãããŠäœ¿çšããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããInteger.parseIntã«ãã£ãŠintã«å€æã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠãã®intãè¿ãããŸãã
key - é¢é£ä»ããããŠããå€ãintãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ãintãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå ŽåãputInt(String,int), get(String,String)public abstract void putLong(String key, long value)
Long.toString(long)ã«æž¡ãããå Žåã«è¿ãããæååã§ãã ãã®ã¡ãœããã¯ãgetLong(java.lang.String, long)ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - keyãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetLong(String,long)public abstract long getLong(String key, long def)
Long.parseLong(String)ã«ãã£ãŠlongã«å€æãããŸãã ããŒã«é¢é£ä»ããããŠããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ãæž¡ããããšãã«Long.parseLong(String)ãNumberFormatExceptionãã¹ããŒããå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã ãã®ã¡ãœããã¯ãputLong(java.lang.String, long)ãšçµã¿åãããŠäœ¿çšããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããLong.parseLonã«ãã£ãŠlongã«å€æã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠãã®longãè¿ãããŸãã
key - é¢é£ä»ããããŠããå€ãlongãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ãlongãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå ŽåãputLong(String,long), get(String,String)public abstract void putBoolean(String key, boolean value)
getBoolean(java.lang.String, boolean)ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - keyãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetBoolean(String,boolean), get(String,String)public abstract boolean getBoolean(String key, boolean def)
putBoolean(java.lang.String, boolean)ãšçµã¿åãããŠäœ¿çšããŸãã
ããŒã«é¢é£ä»ããããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ããtrueããŸãã¯ãfalseã(倧æåãšå°æåã¯åºå¥ãããªã)以å€ã§ããå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããæ ŒçŽæžã¿ããã©ã«ãããtrueããŸãã¯ãfalseã(倧æåãšå°æåã¯åºå¥ãããªã)ã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠäœ¿çšãããŸããããã§ãªãå Žåã¯ãæå®ãããããã©ã«ãã䜿çšãããŸãã
key - é¢é£ä»ããããŠããå€ãbooleanãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ãbooleanãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå Žåãget(String,String), putBoolean(String,boolean)public abstract void putFloat(String key, float value)
Float.toString(float)ã«æž¡ãããå Žåã«è¿ãããæååã§ãã ãã®ã¡ãœããã¯ãgetFloat(java.lang.String, float)ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - keyãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetFloat(String,float)public abstract float getFloat(String key, float def)
Float.parseFloat(String)ã«ãã£ãп޿°ã«å€æãããŸãã ããŒã«é¢é£ä»ããããŠããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ãæž¡ããããšãã«Float.parseFloat(String)ãNumberFormatExceptionãã¹ããŒããå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã ãã®ã¡ãœããã¯ãputFloat(java.lang.String, float)ãšçµã¿åãããŠäœ¿çšããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããFloat.parseFloatã«ãã£ãŠfloatã«å€æã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠãã®floatãè¿ãããŸãã
key - é¢é£ä»ããããŠããå€ãfloatãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ãfloatãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå ŽåãputFloat(String,float), get(String,String)public abstract void putDouble(String key, double value)
Double.toString(double)ã«æž¡ãããå Žåã«è¿ãããæååã§ãã ãã®ã¡ãœããã¯ãgetDouble(java.lang.String, double)ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - keyãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetDouble(String,double)public abstract double getDouble(String key, double def)
Double.parseDouble(String)ã«ãã£ãп޿°ã«å€æãããŸãã ããŒã«é¢é£ä»ããããŠããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ãæž¡ããããšãã«Double.parseDouble(String)ãNumberFormatExceptionãã¹ããŒããå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã ãã®ã¡ãœããã¯ãputDouble(java.lang.String, double)ãšçµã¿åãããŠäœ¿çšããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããDouble.parseDoubleã«ãã£ãŠdoubleã«å€æã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠãã®doubleãè¿ãããŸãã
key - é¢é£ä»ããããŠããå€ãdoubleãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ãdoubleãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå ŽåãputDouble(String,double), get(String,String)public abstract void putByteArray(String key, byte[] value)
getByteArray(java.lang.String, byte[])ãšçµã¿åãããŠäœ¿çšããŸãã key - æåå圢åŒã®å€ãé¢é£ä»ããããããŒãvalue - ããŒã«é¢é£ä»ããããæåå圢åŒã®å€ãNullPointerException - ããŒãŸãã¯å€ãnullã§ããå ŽåãIllegalArgumentException - key.length()ãMAX_KEY_LENGTHãè¶
ããå ŽåããŸãã¯value.lengthãMAX_VALUE_LENGTH*3/4ãè¶
ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãgetByteArray(String,byte[]), get(String,String)public abstract byte[] getByteArray(String key, byte[] def)
putByteArray(java.lang.String, byte[])ãšçµã¿åãããŠäœ¿çšããŸãã
ããŒã«é¢é£ä»ããããå€ããªãå Žåããããã³ã°ã»ã¹ãã¢ãå©çšã§ããªãå ŽåããŸãã¯é¢é£ä»ããããŠããå€ãBase64ã§ãšã³ã³ãŒããããæå¹ãªbyteé å(äžã®å®çŸ©ãåç §)ã§ãªãå Žåã¯ãæå®ãããããã©ã«ããè¿ããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããæ ŒçŽæžã¿ããã©ã«ããååšããŠã¢ã¯ã»ã¹å¯èœã§ãããæ ŒçŽæžã¿ããã©ã«ããBase64ã§ãšã³ã³ãŒããããæå¹ãªbyteé å(äžèšã®å®çŸ©ã©ãã)ã§ããå Žåã¯ãæå®ãããããã©ã«ãã«åªå ããŠäœ¿çšãããŸããããã§ãªãå Žåã¯ãæå®ãããããã©ã«ãã䜿çšãããŸãã
key - é¢é£ä»ããããŠããå€ãbyteé
åãšããŠè¿ãããããŒãdef - ãã®èšå®ããŒããkeyã«é¢é£ä»ããããŠããå€ãæããªãããé¢é£ä»ããããŠããå€ããã€ãé
åãšããŠè§£éã§ããªããããããã¯ãããã³ã°ã»ã¹ãã¢ã«ã¢ã¯ã»ã¹ã§ããªãå Žåã«è¿ãã¹ãå€ãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãNullPointerException - keyãnullã§ããå Žåã (defã«ã¯nullå€ãæå®ã§ããã) get(String,String), putByteArray(String,byte[])public abstract String[] keys() throws BackingStoreException
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒããããã®ããŒãã«æ ŒçŽæžã¿ããã©ã«ãããããæç€ºçãªèšå®ã«ãã£ãŠãªãŒããŒã©ã€ããããŠããªãå Žåã¯ãæç€ºçãªèšå®ãšæ ŒçŽæžã¿ããã©ã«ããé åã«è¿ãããŸãã
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãpublic abstract String[] childrenNames() throws BackingStoreException
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãpublic abstract Preferences parent()
IllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãpublic abstract Preferences node(String pathName)
è¿ãããããŒãããã®åŒåºã以åã«ååšããªãã£ãå Žåããã®åŒåºãã«ãã£ãŠäœæãããããŒããšãã®äžäœããŒãã¯ãè¿ãããããŒã(ãããã¯ãã®äžäœããŒããŸãã¯äžäœããŒã)äžã§flushã¡ãœãããåŒã³åºããããšãã«ãæç¶çã«ãªããŸãã
pathName - è¿ãããèšå®ããŒãã®ãã¹åãIllegalArgumentException - ãã¹åãç¡å¹ã§ããå Žå(ã€ãŸãããã¹åã«é£ç¶ããè€æ°ã®ã¹ã©ãã·ã¥æåãå«ãŸããŠãããããã¹åãã¹ã©ãã·ã¥æåã§çµãã£ãŠããŠãã®é·ãã2æå以äžã®å Žå)ãNullPointerException - ãã¹åãnullã§ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãflush()public abstract boolean nodeExists(String pathName) throws BackingStoreException
ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠãã§ã«åé€ãããŠããå Žåã¯ããã¹åãããã®ãšãã«ã ããã®ã¡ãœããã®åŒåºããæ£åœã«ãªããfalseãè¿ããŸãã ã€ãŸããã€ãã£ãªã p.nodeExists("")ã¯ãpãåé€ãããŠãããã©ããããã¹ãããå Žåã«äœ¿çšã§ããŸãã
pathName - ååšã確èªãããããŒãã®ãã¹åãBackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalArgumentException - ãã¹åãç¡å¹ã§ããå Žå(ã€ãŸãããã¹åã«é£ç¶ããè€æ°ã®ã¹ã©ãã·ã¥æåãå«ãŸããŠãããããã¹åãã¹ã©ãã·ã¥æåã§çµãã£ãŠããŠãã®é·ãã2æå以äžã®å Žå)ãNullPointerException - ãã¹åãnullã§ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠãããpathNameãç©ºã®æåå(ãã)ã§ãªãå Žåãpublic abstract void removeNode()
throws BackingStoreException
name()ãabsolutePath()ãisUserNode()ãflush()ããŸãã¯nodeExists("")以å€ã®ãã¹ãŠã®ã¡ãœããã詊ã¿ããšãIllegalStateExceptionã§å€±æããŸãã Objectã«å®çŸ©ãããã¡ãœããã¯ãããŒããåé€ãããããšã§ãåŒã³åºãããšãã§ããIllegalStateExceptionã¯ã¹ããŒãããŸããã
ãã®åé€ã¯ããã®ããŒã(ãŸãã¯äžäœããŒã)äžã§flushã¡ãœãããåŒã³åºãããšãã«ãæ°žç¶çã«ãªããŸãã
ãã®å®è£ ãæ ŒçŽæžã¿ããã©ã«ãããµããŒãããŠããå Žåã¯ãããŒããåé€ãããšããã®ããŒããŸãã¯ãã®äžäœããŒãã«æ ŒçŽæžã¿ããã©ã«ãã䜿çšãããŸãã ã€ãŸãããã以éã«ãã®ããŒãã®ãã¹åäžã§nodeExistsãåŒã³åºããšãtrueãè¿ãããŸãããŸããnodeãåŒã³åºããšãèšå®ãŸãã¯åããããã¯ãã®äž¡æ¹ã®ç©ºã§ãªãã³ã¬ã¯ã·ã§ã³ã衚ã(å¥ã®) Preferencesã€ã³ã¹ã¿ã³ã¹ãè¿ãããŸãã
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠãã§ã«åé€ãããŠããå ŽåãUnsupportedOperationException - ãã®ã¡ãœãããã«ãŒãã»ããŒãäžã§åŒã³åºãããå Žåãflush()public abstract String name()
public abstract String absolutePath()
public abstract boolean isUserNode()
public abstract String toString()
public abstract void flush()
throws BackingStoreException
ãã®å®è£ ã䜿çšããã°ãä»»æã®ã¿ã€ãã³ã°ã§æ°žç¶ã¹ãã¢ã«å€æŽããã©ãã·ã¥ã§ããŸãã ãã®ã¡ãœãããåŒã³åºããããŸã§åŸ æ©ããå¿ èŠã¯ãããŸããã
æ°ããäœæãããããŒãã§ãã©ãã·ã¥ãçºçãããšããã®ããŒããæ°žç¶çã«ãªãããŸã æ°žç¶çã«ãªã£ãŠããªãäžäœããŒã(ããã³äžäœããŒã)ãæ°žç¶çã«ãªããŸãã ãã ããäžäœããŒãã«å¯Ÿããèšå®å€ã®å€æŽã¯ãæ°žç¶çã«ãªããŸããã
ãã®ã¡ãœããããremoveNode()ã¡ãœããã䜿çšããŠåé€ãããããŒãäžã§åŒã³åºããšãflushSpi()ããã®ããŒãäžã§åŒã³åºãããŸãããã»ãã®ããŒãã§ã¯åŒã³åºãããŸããã
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå Žåãsync()public abstract void sync()
throws BackingStoreException
BackingStoreException - ãããã³ã°ã»ã¹ãã¢ã§é害ãçºçãããã¹ãã¢ãšã®éä¿¡ãè¡ããªãããã«ããã®ãªãã¬ãŒã·ã§ã³ãå®äºã§ããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå Žåãflush()public abstract void addPreferenceChangeListener(PreferenceChangeListener pcl)
removeNode()ã¡ãœããã§ã¯çæãããŸããããã®ã¡ãœããã§ã¯ãããŒã倿Žã€ãã³ããçæãããŸãã èšå®å€æŽã€ãã³ãã¯clearã¡ãœããã«ãã£ãŠçæãããŸãã
ããŒã倿Žã€ãã³ãã¯ãç»é²ããããªã¹ããŒãšåãJVMå ã§å€æŽãè¡ããããšãã«ã ããçæãããŸãããã ããäžéšã®å®è£ ã§ã¯ãçŸåšã®JVMã®å€éšã§è¡ããã倿Žã«å¯ŸããŠãã€ãã³ããçæãããããšããããŸãã ã€ãã³ããçæãããæç¹ã§ã倿Žãæ°žç¶çã«ãªã£ãŠããªãããšããããŸãã çŸåšã®ããŒãã®äžäœããŒãã§èšå®ã倿Žããããšãã¯ãã€ãã³ãã¯çæãããŸããããã®ãããªã€ãã³ããå¿ èŠãªå Žåã¯ããã®ããŒããç»é²ããå¿ èŠããããŸãã
pcl - 远å ããèšå®å€æŽãªã¹ããŒãNullPointerException - pclãnullã§ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãremovePreferenceChangeListener(PreferenceChangeListener), addNodeChangeListener(NodeChangeListener)public abstract void removePreferenceChangeListener(PreferenceChangeListener pcl)
pcl - åé€ããèšå®å€æŽãªã¹ããŒãIllegalArgumentException - pclããã®ããŒãäžã§ç»é²ãããèšå®å€æŽãªã¹ããŒã§ã¯ãªãã£ãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãaddPreferenceChangeListener(PreferenceChangeListener)public abstract void addNodeChangeListener(NodeChangeListener ncl)
removeNode()åŒåºãã«ãã£ãŠãè€æ°ã®ããŒã倿Žã€ãã³ãããåé€ãããããŒããã«ãŒããšãããµãããªãŒå
ã®åããŒãã«1ã€ãã€çæãããŸãã)
ããŒã倿Žã€ãã³ãã¯ãç»é²ããããªã¹ããŒãšåãJVMå ã§å€æŽãè¡ããããšãã«ã ããçæãããŸãããã ããäžéšã®å®è£ ã§ã¯ãçŸåšã®JVMã®å€éšã§è¡ããã倿Žã«å¯ŸããŠãã€ãã³ããçæãããããšããããŸãã ã€ãã³ããçæãããæç¹ã§ã倿Žãæç¶çã«ãªã£ãŠããªãããšããããŸãã çŸåšã®ããŒãã®é äžã«ãªãäžäœããŒãã远å ãŸãã¯åé€ããããšãã¯ãã€ãã³ãã¯çæãããŸããããã®ãããªã€ãã³ããå¿ èŠãªå Žåã¯ããã®ããŒããç»é²ããå¿ èŠããããŸãã
äœæãããããŒãã¯ããã ã¡ã«æå¹ã«ãªããŸããã ãããã®ããŒãã¯ãã¢ã¯ã»ã¹ããããšãã«æé»çã«äœæãããŸãããã®ãããã¢ã¯ã»ã¹ãããåã«ãåããŒãããããã³ã°ã»ã¹ãã¢ã«ååšãããã©ãããå®è£ ã倿ã§ããªãå ŽåããããŸã(ããšãã°ããããã³ã°ã»ã¹ãã¢ãå°éäžèœãªå Žåãããã£ãã·ã¥ãããæ å ±ãææ°ã§ãªãå Žåãªã©)ã ãã®ãããªç¶æ³ã§ã®ããŒã倿Žã€ãã³ãã®çæã¯ãç¹ã«å®çŸ©ãããŠããŸããã
ncl - 远å ããNodeChangeListenerãNullPointerException - nclãnullã§ããå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãremoveNodeChangeListener(NodeChangeListener), addPreferenceChangeListener(PreferenceChangeListener)public abstract void removeNodeChangeListener(NodeChangeListener ncl)
ncl - åé€ããNodeChangeListenerãIllegalArgumentException - nclããã®ããŒãäžã§ç»é²ãããNodeChangeListenerã§ã¯ãªãã£ãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãaddNodeChangeListener(NodeChangeListener)public abstract void exportNode(OutputStream os) throws IOException, BackingStoreException
ãã®XMLããã¥ã¡ã³ãã§ã¯ã次ã®DOCTYPEã宣èšãããŸãã
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
UTF-8æåãšã³ã³ãŒãã£ã³ã°ã䜿çšãããŸãã
ãã®ã¡ãœããã¯éåžžã®ã«ãŒã«ãšç°ãªãããã®ã¯ã©ã¹ã®è€æ°ã®ã¡ãœããã䞊è¡ããŠå®è¡ãããšã鿬¡å®è¡ããå ŽåãšåãçµæãçæãããŸãã ãã®ã¡ãœããã®1åã®åŒåºãã§ãã®ããŒãã®èšå®ã䞊è¡ããŠå€æŽãããå Žåããšã¯ã¹ããŒããããèšå®ããã®ããŒãã«å«ãŸããèšå®ãšäžèŽããŠããªãããšããããŸããã€ãŸãã䞊è¡ããŠè¡ããã倿Žã¯ããšã¯ã¹ããŒããããããŒã¿ã«åæ ãããŠããªãããšããããŸãã
os - XMLããã¥ã¡ã³ãã®çºè¡å
ã®åºåã¹ããªãŒã ãIOException - æå®ãããåºåã¹ããªãŒã ãžã®æžèŸŒã¿æã«IOExceptionãçºçããå ŽåãBackingStoreException - èšå®ããŒã¿ããããã³ã°ã»ã¹ãã¢ããèªã¿åããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãimportPreferences(InputStream)public abstract void exportSubtree(OutputStream os) throws IOException, BackingStoreException
ãã®XMLããã¥ã¡ã³ãã§ã¯ã次ã®DOCTYPEã宣èšãããŸãã
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
UTF-8æåãšã³ã³ãŒãã£ã³ã°ã䜿çšãããŸãã
ãã®ã¡ãœããã¯éåžžã®ã«ãŒã«ãšç°ãªãããã®ã¯ã©ã¹ã®è€æ°ã®ã¡ãœããã䞊è¡ããŠå®è¡ãããšã鿬¡å®è¡ããå ŽåãšåãçµæãçæãããŸãã ãã®ã¡ãœããã®1åã®åŒåºãã§ãã®ããŒããã«ãŒããšãããµãããªãŒã®èšå®ãŸãã¯ããŒãã䞊è¡ããŠå€æŽãããå Žåããšã¯ã¹ããŒããããèšå®ããµãããªãŒãšäžèŽããŠããªãããšããããŸããã€ãŸãã䞊è¡ããŠè¡ããã倿Žã¯ããšã¯ã¹ããŒããããããŒã¿ã«åæ ãããŠããªãããšããããŸãã
os - XMLããã¥ã¡ã³ãã®çºè¡å
ã®åºåã¹ããªãŒã ãIOException - æå®ãããåºåã¹ããªãŒã ãžã®æžèŸŒã¿æã«IOExceptionãçºçããå ŽåãBackingStoreException - èšå®ããŒã¿ããããã³ã°ã»ã¹ãã¢ããèªã¿åããªãå ŽåãIllegalStateException - ãã®ããŒã(ãŸãã¯äžäœããŒã)ãremoveNode()ã¡ãœããã«ãã£ãŠåé€ãããŠããå ŽåãimportPreferences(InputStream), exportNode(OutputStream)public static void importPreferences(InputStream is) throws IOException, InvalidPreferencesFormatException
XMLããã¥ã¡ã³ãã«ã¯ã次ã®DOCTYPE宣èšãå¿ èŠã§ãã
<!DOCTYPE preferences SYSTEM "http://java.sun.com/dtd/preferences.dtd">
ãã®ã¡ãœããã¯ãexportNode(OutputStream)ããã³exportSubtree(OutputStream)ãšçµã¿åãããŠäœ¿çšããããã«èšèšãããŠããŸãã
ãã®ã¡ãœããã¯éåžžã®ã«ãŒã«ãšç°ãªãããã®ã¯ã©ã¹ã®è€æ°ã®ã¡ãœããã䞊è¡ããŠå®è¡ãããšã鿬¡å®è¡ããå ŽåãšåãçµæãçæãããŸãã ãã®ã¡ãœãããå®è¡ãããšããã®ã¯ã©ã¹ã®ã»ãã®publicã¡ãœãã(node(String)ãput(String, String)ãªã©)ããªãŒããŒã©ã€ãããŠå®è£
ããå ŽåãšåãçµæãçæãããŸãã
is - XMLããã¥ã¡ã³ãã®èªèŸŒã¿å
ã®å
¥åã¹ããªãŒã ãIOException - æå®ãããå
¥åã¹ããªãŒã ããã®èªèŸŒã¿æã«IOExceptionãçºçããå ŽåãInvalidPreferencesFormatException - å
¥åã¹ããªãŒã äžã®ããŒã¿ããèŠæ±ãããããã¥ã¡ã³ãåãæã€æå¹ãªXMLããã¥ã¡ã³ãã«ãªããªãå ŽåãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("preferences")ãæåŠããå ŽåãRuntimePermission ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã