ஜாவாவில் தனியார் கட்டமைப்பாளரை எவ்வாறு செயல்படுத்துவது



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

கட்டமைப்பாளர்கள் ஒரு பொருளின் நிலையைத் தொடங்க பயன்படுத்தப்படுகின்றன. முறைகளைப் போலவே, ஒரு கட்டமைப்பாளரும் அறிக்கைகளின் தொகுப்பை வைத்திருக்க முடியும், இது அறிவுறுத்தல்களைத் தவிர வேறொன்றுமில்லை. இந்த கட்டுரையில், நாங்கள் தனியார் கட்டமைப்பாளரைப் பற்றி விவாதிப்போம் பின்வரும் வரிசையில்:

ஜாவாவில் கட்டமைப்பாளருக்கு அறிமுகம்

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





டோஸ்ட்ரிங் முறையைப் பயன்படுத்துவது எப்படி

வெளிப்படையாக, இல்லை.

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



கட்டமைப்பாளருக்கு குறியீட்டாளரால் வழங்கப்பட்ட அணுகல் விவரக்குறிப்பைக் கொண்டிருக்கும் எந்தவொரு முறையும் தனிப்பட்டதாக மாற்றப்பட்டிருப்பது வகுப்பினுள் மட்டுமே அணுக முடியும் என்பதை புரிந்து கொள்ள வேண்டியது அவசியம்.

ஜாவாவில் தனியார் கட்டமைப்பாளர்

சிங்கிள்டன் வகுப்பு

பெயரிலிருந்தே, அந்த வகுப்பின் பொருள்களின் எண்ணிக்கையை ஒன்றிற்கு கட்டுப்படுத்தினால் ஒரு வகுப்பை ஒரு சிங்கிள்டன் என்று அழைக்கலாம். அத்தகைய சந்தர்ப்பங்களில் ஒரு வர்க்கத்திற்கு ஒன்றுக்கு மேற்பட்ட பொருள்கள் இருக்கக்கூடாது. நெட்வொர்க்கிங் மற்றும் தரவுத்தள இணைப்பு போன்ற கருத்துக்களில் சிங்கிள்டன் வகுப்புகள் முழுமையாய் பயன்படுத்தப்படுகின்றன. சிங்கிள்டன் வகுப்பு ஒரு தனியார் வகுப்பு .



வகுப்பின் நிகழ்வைப் பிரித்தெடுக்க மற்றொரு வழி இருக்க வேண்டும் மற்றும் முடிவைத் திரும்பப் பெறுவதற்கான முறை இருக்க வேண்டும். அதற்கான பொருத்தமான விளக்கம் கீழே. முதல் பிகோகிராஃப் 'a.x' இன் மதிப்பு 20 க்கு சமமாகவும், 'b.x' இன் மதிப்பு 20 ஆகவும் இருக்கும் சாத்தியமான முடிவை சித்தரிக்கிறது. குறியீட்டில், சிங்கிள்டன் தனியார் வகுப்பை நாங்கள் வரையறுக்கும்போது, ​​அதை உருவாக்குபவர்களை வகுப்பிற்கு வெளியே அணுக முடியாது.

A.x = 20 இன் மதிப்பு

B.x = 20 இன் மதிப்பு

// தனியார் கட்டமைப்பாளர்களைப் பயன்படுத்தி சிங்கிள்டன் // வடிவத்தை செயல்படுத்துவதை நிரூபிக்க ஜாவா திட்டம். இறக்குமதி java.io. * வகுப்பு MySingleton {நிலையான MySingleton instance = null public int x = 10 // தனியார் கட்டமைப்பாளரை வகுப்புக்கு வெளியே அணுக முடியாது MySingleton () {} // பயனர்களுக்கு நிகழ்வுகளை வழங்குவதற்கான நிலையான பொது MySingleton getInstance () {if (instance == null) instance = new MySingleton () return instance}} // Driver Class class Main {public static void main (string args []) {MySingleton a = MySingleton.getInstance () MySingleton b = MySingleton.getInstance () ax = ax + 10 System.out.println ('கோடரியின் மதிப்பு =' + கோடாரி) System.out.println ('bx =' + bx இன் மதிப்பு)}}

ஜாவாவில் தனியார் கட்டமைப்பாளரின் தாக்கம்

தனியார் கட்டமைப்பாளர்கள் வேறொரு வகுப்பிலிருந்து பெறப்பட்ட வகுப்புகளை அணுக முடியாது. எனவே, நாங்கள் ஒரு பொது செயல்பாட்டைக் கொடுக்க வேண்டும், இது தனியார் கட்டமைப்பாளரை அழைக்கிறது. வழக்கில், பொருள் துவக்கப்படவில்லை, அல்லது பொருளை துவக்கியிருந்தால் அதை திருப்பி அனுப்ப வேண்டும். பொருள்களுக்கு இது மிகவும் பயனுள்ளதாக இருக்கும், அவற்றை துவக்க முடியாது. பின்வரும் சந்தர்ப்பங்களில் ஒரு தனியார் கட்டமைப்பாளர் பயன்படுத்தப்படுகிறார்:

  • நிலையான முறைகள் மற்றும் உறுப்பினர்களை மட்டுமே கொண்ட அந்தந்த வகுப்புகள்.
  • நிலையான இறுதி உறுப்பினர்களை (மாறிலிகள்) பரவலாகப் பயன்படுத்தும் குறிப்பிட்ட வகுப்புகள்.
  • சிங்கிள்டான்களை இணைக்க.
  • தொழிற்சாலை முறைகளை இணைக்க.

வகை-பாதுகாப்பான கணக்கீடுகளைப் பயன்படுத்த.

உள் கட்டமைப்பாளர் சங்கிலி

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

கூடுதலாக, சுழல்நிலை அழைப்புகள் இருக்கக்கூடாது, இது எல்லையற்ற சுழற்சியை உருவாக்கும். ஜாவா புரோகிராமில் ஒரு கட்டமைப்பாளரின் சங்கிலியின் உதாரணத்தை இப்போது பார்ப்போம்.

தொகுப்பு com.journaldev.constructor பொது வகுப்பு ஊழியர் {தனியார் எண்ணாக ஐடி தனியார் சரம் பெயர் பொது ஊழியர் () {இது ('ஜான் டோ', 999) System.out.println ('இயல்புநிலை ஊழியர் உருவாக்கப்பட்டது')} பொது ஊழியர் (int i) { இது ('ஜான் டோ', i) System.out.println ('பணியாளர் இயல்புநிலை பெயருடன் உருவாக்கப்பட்டது')} பொது ஊழியர் (சரம் கள், எண்ணாக நான்) {this.id = i this.name = s System.out.println ( 'பணியாளர் உருவாக்கப்பட்டது')} பொது நிலையான வெற்றிட மெயின் (சரம் [] ஆர்க்ஸ்) {பணியாளர் emp = புதிய பணியாளர் () System.out.println (emp) பணியாளர் emp1 = புதிய பணியாளர் (10) System.out.println (emp1) பணியாளர் emp2 = புதிய பணியாளர் ('பங்கஜ்', 20) System.out.println (emp2) public public பொது சரம் toString ஐ மாற்றவும் () {திரும்ப 'ID =' + id + ', பெயர் =' + பெயர்} public int getId () {திரும்ப ஐடி } பொது வெற்றிட செட்இட் (எண்ணாக ஐடி) {this.id = id} பொது சரம் getName () {திரும்பப் பெயர்} பொது வெற்றிட செட் பெயர் (சரம் பெயர்) {this.name = name}}

சிங்கிள்டன் வகுப்பு வடிவமைப்பு முறை

  • வகுப்பு அளவிலான உறுப்பினர் (ஆர்வமுள்ள துவக்க முறை):

  1. முதலில், ஒரு சிங்கிள்டன் வகுப்பின் தனிப்பட்ட நிலையான நிலையான நிகழ்வை உருவாக்கவும்.

  2. பின்னர், ஒரு நிலையான முறையை எழுதுங்கள், இது ஒரு சிங்கிள்டன் வகுப்பின் பொருளைத் தருகிறது, இது ஒரு வர்க்க உறுப்பினர் நிகழ்வாக நாங்கள் உருவாக்கியுள்ளோம்.

  3. நிலையான நிலையான நிகழ்வை நேரடியாக அணுக ஒரு நிலையான உறுப்பினரை பொதுமக்களாகக் குறிக்க முடியும்.

  4. சிங்கிள்டன் வகுப்பு ஒரு சாதாரண ஜாவா வகுப்பிலிருந்து உடனடி அடிப்படையில் மாறுபடும். ஒரு சாதாரண வகுப்பில், ஒரு கட்டமைப்பாளர் பயன்படுத்தப்படுகிறார், ஆனால் சிங்கிள்டன் வகுப்பிற்கு நாம் Get Instance () முறையைப் பயன்படுத்துகிறோம்.

  • வகுப்பு அளவிலான உறுப்பினர் (சோம்பேறி துவக்க முறை):

  1. முதலில், ஒரு கட்டமைப்பாளரை தனிப்பட்டதாக தொடங்கவும்.

  2. இந்த சிங்கிள்டன் வகுப்பின் தனிப்பட்ட நிலையான நிகழ்வை உருவாக்கவும். அதை உடனடியாக நிறுவ வேண்டாம் என்பதை நினைவில் கொள்ளுங்கள்.

  3. பின்னர், ஒரு நிலையான முறையை எழுதுங்கள், இது நிலையான நிகழ்வு உறுப்பினரை பூஜ்யமாக சரிபார்த்து, நிகழ்வைத் தொடங்குகிறது. இறுதியாக, இது சிங்கிள்டன் வகுப்பின் ஒரு பொருளை வழங்குகிறது.

  • வகுப்பு-நிலை உறுப்பினர் (இரட்டை பூட்டு முறையுடன் சோம்பேறி துவக்கம்):

நிகழ்வு பூஜ்யமாக இருக்கும்போது ஒரே நேரத்தில் 'if' அறிக்கைக்குள் இருவரும் உள்ளே செல்லும் இரண்டு நூல்களைக் கவனியுங்கள். எங்கே, ஒரு நூல் ஒரு நிகழ்வை உருவாக்க ஒத்திசைக்கப்பட்ட தொகுதிக்குள் செல்கிறது, மற்றொன்று தடுக்கப்படுகிறது. முதல் நூல் ஒத்திசைக்கப்பட்ட தொகுதியில் வசிப்பதால், வரிசையில் உள்ள நூல் மற்றொரு சிங்கிள்டன் பொருளை உருவாக்குகிறது. இரண்டாவது நூல் ஒத்திசைக்கப்பட்ட தொகுதிக்குள் நுழையும் போது, ​​நிகழ்வு பூஜ்யமற்றதா என்பதை சரிபார்க்கத் தவறிவிடுகிறது என்பதை நினைவில் கொள்க.

  • உள்ளமைக்கப்பட்ட உள் வகுப்பைப் பயன்படுத்துதல் (சோம்பேறி சுமை முறை):

இங்கே, இது ஜாவா மொழி விவரக்குறிப்புகள் (JLS) ஐ அடிப்படையாகக் கொண்டது. ஜாவா மெய்நிகர் இயந்திரம் நிலையான தரவு-உறுப்பினர்களை தேவைக்கேற்ப மட்டுமே ஏற்றும். இவ்வாறு, சிங்கிள்டன் வகுப்பு முதலில் ஜே.வி.எம். எனவே, ஒரு வகுப்பில் நிலையான தரவு உறுப்பினர் இல்லை

சிங்கிள்டன் வகுப்பு வைத்திருப்பவர் SINGLE_INSTANCE ஐ ஏற்றுவதில்லை. நாம் getIntance முறையைப் பயன்படுத்தும்போது, ​​இது மட்டுமே நிகழ்கிறது. வகுப்பின் துவக்கத்தை செயல்படுத்த JLS உத்தரவாதம் அளிக்கிறது. ஏற்றுதல் மற்றும் துவக்கத்திற்கான நிலையான getInstance () முறையில் வெளிப்படையான ஒத்திசைவுக்கான ஏற்பாடு. துவக்கமானது நிலையான மாறி SINGLE_INSTANCE ஐ தொடர்ச்சியான வழியில் உருவாக்குவதால், getInstance () இன் ஒரே நேரத்தில் அனைத்து அழைப்புகளும் ஒத்திசைவு மேல்நிலை இல்லாமல் திரும்பி வரும்.

மேலே உள்ள எல்லா அணுகுமுறைகளும் எல்லா நிகழ்வுகளிலும் முழுமையான தீர்வுகள் அல்ல. மேற்கண்ட செயலாக்கங்களின் பல நிகழ்வுகளை பிரதிபலிப்பைப் பயன்படுத்தி உருவாக்கலாம். இரண்டு சூழ்நிலைகளிலும், நாங்கள் தனியார் கட்டமைப்பாளரைக் கடந்து பல நிகழ்வுகளை உருவாக்கலாம். எனவே, ஒரு புதிய அணுகுமுறை enums ஐப் பயன்படுத்தி ஒரு சிங்கிள்டன் வகுப்பை உருவாக்குவதாகும். Enums புலங்கள் தொகுக்கப்பட்ட நேர மாறிலிகள் என்பதால், அவை அவற்றின் enum வகையின் நிகழ்வுகளாகும். முதல் முறையாக enum வகை குறிப்பிடப்படும்போது அவை கட்டமைக்கப்படுகின்றன.

இதன் மூலம், ஜாவா கட்டுரையில் தனியார் கட்டமைப்பாளரின் முடிவுக்கு வருகிறோம். தனியார் கட்டமைப்பாளர்களைப் பற்றியும், அவற்றை ஜாவாவில் எவ்வாறு பயன்படுத்தலாம் என்பதையும் நீங்கள் புரிந்து கொண்டீர்கள் என்று நம்புகிறேன்.

பாருங்கள் உலகெங்கிலும் பரவியுள்ள 250,000 க்கும் மேற்பட்ட திருப்தியான கற்றவர்களின் வலைப்பின்னலுடன் நம்பகமான ஆன்லைன் கற்றல் நிறுவனமான எடுரேகாவால். ஜுவா டெவலப்பராக விரும்பும் மாணவர்கள் மற்றும் நிபுணர்களுக்காக எடுரேகாவின் ஜாவா ஜே 2 இஇ மற்றும் எஸ்ஓஏ பயிற்சி மற்றும் சான்றிதழ் பாடநெறி வடிவமைக்கப்பட்டுள்ளது. ஜாவா புரோகிராமிங்கில் உங்களுக்கு ஒரு தொடக்கத்தைத் தருவதற்கும், ஹைபர்னேட் & ஸ்பிரிங் போன்ற பல்வேறு ஜாவா கட்டமைப்புகளுடன் கோர் மற்றும் மேம்பட்ட ஜாவா கருத்தாக்கங்களுக்கும் பயிற்சி அளிப்பதற்காக இந்த பாடநெறி வடிவமைக்கப்பட்டுள்ளது.

எங்களுக்கு ஒரு கேள்வி கிடைத்ததா? தயவுசெய்து இந்த “ஜாவா டுடோரியல்” வலைப்பதிவின் கருத்துகள் பிரிவில் குறிப்பிடவும், விரைவில் நாங்கள் உங்களைத் தொடர்புகொள்வோம்.