"आज आम्ही आणखी एक नवीन आणि मनोरंजक विषय शोधत आहोत: गुणधर्म. "

"जावामध्ये, प्रोग्राम्स लवचिक आणि सहजपणे सानुकूल करण्यायोग्य, म्हणजे सहज कॉन्फिगर करण्यायोग्य बनविण्याची प्रथा आहे."

"उदाहरणार्थ, दर तासाला एकदा तुमचा प्रोग्राम एका विशिष्ट डिरेक्ट्रीमधून फाइल्स कॉपी करतो, त्यांना झिप करतो आणि त्या तुम्हाला ईमेलमध्ये पाठवतो. हे करण्यासाठी, प्रोग्रामला फाइल्स कुठून घेतली जातील आणि ईमेल पत्ता माहित असणे आवश्यक आहे. ते कुठे पाठवले जावेत. असा डेटा सहसा ऍप्लिकेशन कोडमध्ये संग्रहित केला जात नाही, परंतु वेगळ्या गुणधर्म फाइल्समध्ये संग्रहित केला जातो."

या फाईलमधील डेटा समान चिन्हाने विभक्त केलेल्या की-व्हॅल्यू जोड्या म्हणून संग्रहित केला जातो.

उदाहरण
data.properties file
directory = c:/text/downloads
email = zapp@codegym.cc

"चिन्हाच्या डावीकडे नाव (की), उजवीकडे मूल्य आहे."

"तर हे हॅशमॅपचे एक प्रकारचे मजकूर प्रतिनिधित्व आहे?"

"सर्वसाधारणपणे, होय."

"अशा फायलींसोबत काम करण्याच्या सोयीसाठी, Java मध्ये एक विशेष गुणधर्म वर्ग आहे. गुणधर्म वर्गाला हॅशटेबल<ऑब्जेक्ट,ऑब्जेक्ट> वारसा मिळतो. हे हॅशटेबल म्हणून देखील विचारात घेतले जाऊ शकते जे स्वतः फाइलमधून लोड करू शकते."

"त्याच्या पद्धती येथे आहेत:"

पद्धत वर्णन
void load(Reader reader) रीडर ऑब्जेक्टद्वारे प्रस्तुत केलेल्या फाइलमधून गुणधर्म लोड करते
void load(InputStream inStream) इनपुटस्ट्रीम ऑब्जेक्टद्वारे प्रस्तुत केलेल्या फाइलमधून गुणधर्म लोड करते
void loadFromXML(InputStream in) एक्सएमएल फाइलमधून गुणधर्म लोड करा
Object get(Object key) निर्दिष्ट की साठी मूल्य मिळवते. ही पद्धत हॅशटेबलकडून वारशाने प्राप्त झाली आहे
String getProperty(String key) की द्वारे गुणधर्म मूल्य (स्ट्रिंग) मिळवते.
String getProperty(String key, String defaultValue) अशी कोणतीही की नसल्यास की किंवा डीफॉल्ट व्हॅल्यूद्वारे गुणधर्म मूल्य मिळवते.
Set<String> stringPropertyNames() सर्व की ची सूची मिळवते

"दुसर्‍या शब्दात, तुम्हाला प्रत्यक्षात फक्त दोन ऑपरेशन्स करणे आवश्यक आहे- काही फाइलमधून प्रॉपर्टी ऑब्जेक्टमध्ये डेटा लोड करा आणि नंतर getProperty () पद्धत वापरून हे गुणधर्म मिळवा . तसेच, आणि हे विसरू नका की तुम्ही गुणधर्म ऑब्जेक्ट वापरू शकता. हॅशमॅप . "

"हे दुसरे उदाहरण आहे:"

कोड
// The file that stores our project's properties
File file = new File("c:/data.properties");

// Create a Properties object and load data from the file into it.
Properties properties = new Properties();
properties.load(new FileReader(file));

// Get property values from the Properties object
String email = properties.getProperty("email");
String directory = properties.getProperty("directory");

// Get a numeric value from the Properties object
int maxFileSize = Integer.parseInt(properties.getProperty("max.size", "10000"));

"अहो. म्हणून आम्ही प्रॉपर्टीज ऑब्जेक्ट बनवतो, आणि नंतर त्यावर फाइल पास करतो. लोड पद्धतीवर. आणि मग आम्ही फक्त getProperty कॉल करतो. बरोबर?"

"हो."

"आणि तुम्ही असेही म्हणालात की ते हॅशमॅप म्हणून वापरले जाऊ शकते? तुम्हाला काय म्हणायचे आहे?"

"प्रॉपर्टीज क्लासला हॅशटेबलचा वारसा मिळतो, जो हॅशमॅप सारखाच आहे, परंतु त्याच्या सर्व पद्धती सिंक्रोनाइझ केल्या आहेत. तुम्ही स्क्रीनवर प्रॉपर्टी फाइलमधील सर्व व्हॅल्यू फक्त याप्रमाणे प्रदर्शित करू शकता:"

कोड
// Get the file with the properties
File file = new File("c:/data.properties");

// Create a Properties object and load data from the file into it.
Properties properties = new Properties();
properties.load(new FileReader(file));

// Run through all the keys and display their values on the console
for (String key : properties.stringPropertyNames())
{
 System.out.println(properties.get(key));
}

"अहो. सर्व काही जागेवर पडलेले दिसते. धन्यवाद, ऋषी. मी ही मस्त गोष्ट वापरणार आहे."