logo

שיעור מאפיינים ב-Java

ה נכסים האובייקט מכיל מפתח וזוג ערכים שניהם כמחרוזת. המחלקה java.util.Properties היא תת המחלקה של Hashtable.

ניתן להשתמש בו כדי לקבל ערך נכס על סמך מפתח הנכס. המחלקה Properties מספקת שיטות לקבל נתונים מקובץ המאפיינים ולאחסן נתונים בקובץ המאפיינים. יתר על כן, ניתן להשתמש בו כדי לקבל את המאפיינים של מערכת.

שנה את שם ספריית לינוקס

יתרון של קובץ המאפיינים

הידור מחדש אינו נדרש אם המידע משתנה מקובץ מאפיינים: אם מידע כלשהו משתנה מקובץ המאפיינים, אין צורך להדר מחדש את מחלקת ה-Java. הוא משמש לאחסון מידע שאמור להשתנות לעתים קרובות.

כיתת בוני נכסים

שיטהתיאור
נכסים()זה יוצר רשימת נכסים ריקה ללא ערכי ברירת מחדל.
מאפיינים (ברירת מחדל של מאפיינים)זה יוצר רשימת נכסים ריקה עם ברירות המחדל שצוינו.

שיעור שיטות מאפיינים

השיטות הנפוצות של מחלקת מאפיינים ניתנות להלן.

שיטהתיאור
עומס ריק ציבורי (Reader r)הוא טוען נתונים מאובייקט Reader.
עומס ריק ציבורי (InputStream הוא)הוא טוען נתונים מאובייקט InputStream
public void loadFromXML(InputStream in)הוא משמש לטעינת כל המאפיינים המיוצגים על ידי מסמך ה-XML בזרם הקלט שצוין לטבלת מאפיינים זו.
מחרוזת ציבורית getProperty(מפתח מחרוזת)זה מחזיר ערך על סמך המפתח.
public String getProperty(מחרוזת מפתח, String defaultValue)הוא מחפש את הנכס עם המפתח שצוין.
public void setProperty(מפתח מחרוזת, ערך מחרוזת)זה קורא לשיטת ה-put של Hashtable.
רשימת חללים ציבורית (PrintStream out)הוא משמש להדפסת רשימת המאפיינים לזרם הפלט שצוין.
רשימת חללים ציבורית (PrintWriter יצא))הוא משמש להדפסת רשימת המאפיינים לזרם הפלט שצוין.
Public Enumeration PropertyNames())הוא מחזיר ספירה של כל המפתחות מרשימת הנכסים.
public Set stringPropertyNames()הוא מחזיר קבוצה של מפתחות מתוך רשימת המאפיינים כאשר המפתח והערך המתאים לו הם מחרוזות.
חנות חלל ציבורית (כותב w, הערת מחרוזת)זה כותב את המאפיינים באובייקט הסופר.
חנות חלל ציבורית (מערכת הפעלה OutputStream, הערת מחרוזת)הוא כותב את המאפיינים באובייקט OutputStream.
public void storeToXML(OutputStream OS, String comment)הוא כותב את המאפיינים באובייקט הסופר ליצירת מסמך XML.
public void storeToXML(Writer w, String comment, String encoding)הוא כותב את המאפיינים באובייקט הסופר ליצירת מסמך XML עם הקידוד שצוין.

דוגמה למחלקה Properties לקבלת מידע מקובץ המאפיינים

כדי לקבל מידע מקובץ המאפיינים, צור תחילה את קובץ המאפיינים.

db.properties
 user=system password=oracle 

כעת, בואו ניצור את מחלקת ה-Java כדי לקרוא את הנתונים מקובץ המאפיינים.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ FileReader reader=new FileReader('db.properties'); Properties p=new Properties(); p.load(reader); System.out.println(p.getProperty('user')); System.out.println(p.getProperty('password')); } } 
 Output:system oracle 

כעת אם תשנה את הערך של קובץ המאפיינים, אין צורך להדר מחדש את מחלקת ה-Java. זה אומר שאין בעיית תחזוקה.


דוגמה למחלקה Properties כדי לקבל את כל מאפייני המערכת

לפי שיטת System.getProperties() נוכל לקבל את כל המאפיינים של המערכת. בואו ניצור את המחלקה שמקבלת מידע ממאפייני המערכת.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=System.getProperties(); Set set=p.entrySet(); Iterator itr=set.iterator(); while(itr.hasNext()){ Map.Entry entry=(Map.Entry)itr.next(); System.out.println(entry.getKey()+' = '+entry.getValue()); } } } 
 Output: java.runtime.name = Java(TM) SE Runtime Environment sun.boot.library.path = C:Program FilesJavajdk1.7.0_01jrein java.vm.version = 21.1-b02 java.vm.vendor = Oracle Corporation java.vendor.url = http://java.oracle.com/ path.separator = ; java.vm.name = Java HotSpot(TM) Client VM file.encoding.pkg = sun.io user.country = US user.script = sun.java.launcher = SUN_STANDARD ........... 

דוגמה למחלקה Properties ליצירת קובץ המאפיינים

כעת נכתוב את הקוד ליצירת קובץ המאפיינים.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=new Properties(); p.setProperty('name','Sonoo Jaiswal'); p.setProperty('email','[email protected]'); p.store(new FileWriter('info.properties'),'Javatpoint Properties Example'); } } 

בוא נראה את קובץ המאפיינים שנוצר.

תיבת רשימה של java
info.properties
 #Javatpoint Properties Example #Thu Oct 03 22:35:53 IST 2013 [email protected] name=Sonoo Jaiswal