"இன்று நாங்கள் மற்றொரு புதிய மற்றும் சுவாரஸ்யமான தலைப்பை ஆராய்வோம்: பண்புகள். "

"ஜாவாவில், நிரல்களை நெகிழ்வானதாகவும், எளிதில் தனிப்பயனாக்கக்கூடியதாகவும், அதாவது எளிதாக உள்ளமைக்கக்கூடியதாக மாற்றுவது வழக்கம்."

"உதாரணமாக, ஒரு மணி நேரத்திற்கு ஒருமுறை, உங்கள் நிரல் ஒரு குறிப்பிட்ட கோப்பகத்தில் இருந்து கோப்புகளை நகலெடுத்து, அவற்றை ஜிப் செய்து, மின்னஞ்சலில் உங்களுக்கு அனுப்புகிறது. இதைச் செய்ய, கோப்புகள் எங்கிருந்து எடுக்கப்படும் என்பது மற்றும் மின்னஞ்சல் முகவரியை நிரல் தெரிந்து கொள்ள வேண்டும். அவை எங்கு அனுப்பப்பட வேண்டும், அத்தகைய தரவு பொதுவாக பயன்பாட்டுக் குறியீட்டில் சேமிக்கப்படவில்லை, ஆனால் ஒரு தனி பண்புகள் கோப்புகளில்."

இந்தக் கோப்பில் உள்ள தரவு சமமான அடையாளத்தால் பிரிக்கப்பட்ட முக்கிய-மதிப்பு ஜோடிகளாகச் சேமிக்கப்படுகிறது.

உதாரணமாக
data.properties file
directory = c:/text/downloads
email = zapp@codegym.cc

"அடையாளத்தின் இடதுபுறத்தில் பெயர் (விசை), வலதுபுறம் மதிப்பு உள்ளது."

"எனவே இது ஹாஷ்மேப்பின் ஒரு வகையான உரைப் பிரதிநிதித்துவமா?"

"பொதுவாக, ஆம்."

"அத்தகைய கோப்புகளுடன் பணிபுரியும் வசதிக்காக, ஜாவாவில் ஒரு சிறப்பு பண்புகள் வகுப்பு உள்ளது. ப்ராப்பர்டீஸ் கிளாஸ் ஹேஷ்டேபிள்<பொருள், பொருள்> ஆகியவற்றைப் பெறுகிறது. இது ஒரு கோப்பிலிருந்து தன்னைத்தானே ஏற்றக்கூடிய ஹேஷ்டேபிள் என்று கூட நினைக்கலாம்."

"இதோ அதன் முறைகள்:"

முறை விளக்கம்
void load(Reader reader) ரீடர் பொருளால் குறிப்பிடப்படும் கோப்பிலிருந்து பண்புகளை ஏற்றுகிறது
void load(InputStream inStream) InputStream ஆப்ஜெக்ட் மூலம் குறிப்பிடப்படும் கோப்பிலிருந்து பண்புகளை ஏற்றுகிறது
void loadFromXML(InputStream in) XML கோப்பிலிருந்து பண்புகளை ஏற்றவும்
Object get(Object key) குறிப்பிட்ட விசைக்கான மதிப்பை வழங்கும். இந்த முறை Hashtable இலிருந்து பெறப்பட்டது
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"));

"ஆஹா. எனவே நாம் ஒரு Properties ஆப்ஜெக்டை உருவாக்கி, அதற்கு ஒரு கோப்பை அனுப்புகிறோம். ஏற்றும் முறைக்கு. பிறகு நாம் getProperty என்று அழைக்கிறோம். சரியா?"

"ஆமாம்."

"மேலும் இதை HashMap ஆகப் பயன்படுத்தலாம் என்று சொன்னீர்களா? நீங்கள் என்ன சொன்னீர்கள்?"

"Properties class ஆனது Hashtableஐப் பெறுகிறது, இது HashMap ஐப் போன்றது, ஆனால் அதன் அனைத்து முறைகளும் ஒத்திசைக்கப்பட்டுள்ளன. நீங்கள் பண்புகள் கோப்பிலிருந்து அனைத்து மதிப்புகளையும் திரையில் இப்படிக் காட்டலாம்:"

குறியீடு
// 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));
}

"அட. எல்லாமே சரியாப் போயிடுச்சு. நன்றி ரிஷி. நான் இந்த கூலாகப் பயன்படுத்தப் போறேன்."