ஜாவா மற்றும் அதன் வகைகளில் குளோனிங் என்றால் என்ன?

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

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

இந்த கட்டுரையில் நான் விவாதிக்கவிருக்கும் தலைப்புகள் கீழே:





ஜாவாவில் ஒரு முழு எண்ணுக்கு இரட்டிப்பாக்குவது எப்படி

ஜாவாவில் குளோனிங்

ஜாவாவில் பொருள் குளோனிங் என்பது அசல் பொருளின் சரியான நகலை உருவாக்கும் செயல்முறையாகும். வேறு வார்த்தைகளில் கூறுவதானால், அசல் பொருளிலிருந்து எல்லா தரவையும் பண்புகளையும் நகலெடுப்பதன் மூலம் புதிய பொருளை உருவாக்குவதற்கான ஒரு வழியாகும். இன் குளோன் () முறையை செயல்படுத்துவதன் மூலம் மட்டுமே இது சாத்தியமாகும் java.lang.Object வர்க்கம். குளோன் முறை ஒரு பொருளின் சரியான நகலை உருவாக்குகிறதுபுலத்தால் புலம் ஒதுக்கீட்டு வரிசையில் செயல்படுத்தப்பட்டு புதிய பொருள் குறிப்பை வழங்கும் . நீங்கள் நினைவில் கொள்ள வேண்டிய ஒரு விஷயம், ஜாவாவில், குளோன் இடைமுகத்தை செயல்படுத்தும் பொருள்கள், இது மார்க்கர் இடைமுகமாகும், இது குளோனைப் பயன்படுத்த அனுமதிக்கப்படுகிறது ().

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



ஜாவாவில் குளோனிங்கின் நன்மைகள்

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

  • குறியீட்டின் வரிகளைக் குறைக்க உதவுகிறது.
  • நகலெடுப்பதற்கான மிகவும் பயனுள்ள மற்றும் திறமையான வழிபொருள்கள்.
  • மேலும், ஒரு வரிசையை நகலெடுப்பதற்கான விரைவான முறையாக குளோன் () கருதப்படுகிறது.

குறிப்பு: குளோனிங்கைப் பயன்படுத்துவது சில வடிவமைப்பு சிக்கல்களை ஏற்படுத்தக்கூடும், ஆனால் நீங்கள் அதை சரியான மூலோபாய வழியில் பயன்படுத்தினால் அது உங்களுக்கு பயனளிக்கும்.

ஜாவாவில் குளோனிங் வகைகள்

ஜாவாவில் குளோனிங் தொகுக்கப்படலாம்இரண்டு பிரிவுகளாக:



  1. ஆழமற்ற குளோனிங்
  2. ஆழமான குளோனிங்

அவை ஒவ்வொன்றையும் ஒவ்வொன்றாக புரிந்துகொள்வோம்.

ஆழமற்ற குளோனிங்

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

மேலோட்டமான நகல் - ஜாவாவில் குளோனிங் - எடுரேகாஅதற்கான உதாரணத்தை நான் கீழே கொடுத்துள்ளேன்:

தொகுப்பு edureka class EduCourse {சரம் பாடநெறி 1 சரம் பாடநெறி 3 பொது கல்வி (சரம் crs1, சரம் crs2, சரம் crs3) {this.course1 = crs1 this.course2 = crs2 this.course3 = crs3}} வகுப்பு EduLearner குளோனபிள் {int eduND EduCourse eduCourse public EduLearner (int eduId, string learnnerName, EduCourse eduCourse) {this.eduId = eduId this.learnerName = learnnerName this.eduCourse = eduCourse} // குளோனின் இயல்புநிலை பதிப்பு () முறை பாதுகாக்கப்பட்ட பொருள் குளோன் () திரும்பும் குளோன்நெட்ஸ் .clone ()}} பொது வகுப்பு ShallowCloneSample {public static void main (string [] args) {EduCourse j2ee = new EduCourse ('Java', 'Spring', 'Microservices') EduLearner learn1 = புதிய EduLearner (2811, 'Max' , j2ee) EduLearner learn22 = பூஜ்ய முயற்சி {// கற்றவர் 1 இன் குளோனை உருவாக்கி அதை கற்றவர் 2 கற்றவர் 2 = (EduLearner) learnner1.clone ()} catch (CloneNotSupportedException e) {e.printStackTrace ()} // Learner1 இன் அச்சிடும் விவரங்கள் System.out.p rintln ('கற்றல் 2 இன் விவரங்கள்:') System.out.println ('ஐடி:' + learnner1.eduId) System.out.println ('பெயர்:' + learner1.learnerName) System.out.println ('பாடநெறி ஐடி: '+ learnner1.eduCourse) //' learn1 'System.out.println (' கற்றவரின் பாடநெறிகள் 1: ') System.out.println (learner1.eduCourse.course1) System.out.println (learn1) இன் அனைத்து படிப்புகளையும் அச்சிடுகிறது. eduCourse.course2) System.out.println (learner1.eduCourse.course3) // Learner2 System.out.println ('கற்றவர் 2 இன் விவரங்கள்:') System.out.println ('Id:' + learner2.eduId ) System.out.println ('பெயர்:' + Learner2.learnerName) System.out.println ('பாடநெறி ஐடி:' + learnner2.eduCourse) // 'learn 2' System.out.println ('படிப்புகள் of Learner 2: ') System.out.println (learner2.eduCourse.course1) System.out.println (learner2.eduCourse.course2) System.out.println (learner2.eduCourse.course3) //' learn2 2 இன் பாடநெறி 3 ஐ மாற்றுதல் 'learnner2.eduCourse.course3 =' JSP '// இந்த மாற்றம் அசல்' learn1 'System.out.println (' கற்றவர் 2 இன் புதுப்பிக்கப்பட்ட பாடநெறிகள்: ') System.out.println (learner1.eduCourse.course1) System.out.println (learner1.eduCourse.course2) System.out.println (learner1.eduCourse.course3)}}

வெளியீடு:

கற்றல் 2: ஐடி: 2811 பெயர்: அதிகபட்ச பாடநெறி ஐடி: எடுகோர்ஸ் d 15 டிபி 9742 கற்றல் பாடநெறிகள் 1: ஜாவா ஸ்பிரிங் மைக்ரோ சர்வீசஸ் கற்றவரின் விவரங்கள் 2: ஐடி: 2811 பெயர்: அதிகபட்ச பாடநெறி ஐடி: எடுகோர்ஸ் d 15 டிபி 9742 கற்றல் பாடநெறிகள் 2: ஜாவா ஸ்பிரிங் மைக்ரோ சர்வீசஸ் கற்றல் 2 இன் புதுப்பிக்கப்பட்ட படிப்புகள்: ஜாவா ஸ்பிரிங் ஜே.எஸ்.பி.

ஜாவாவில் ஆழமான குளோனிங்

ஜாவாவில், குளோனபிள் இடைமுகத்தை செயல்படுத்துவதன் மூலம் குளோனிங் செயல்முறை செய்யப்படும்போது அது ஆழமான குளோனிங் என்று அழைக்கப்படுகிறது. இந்த வகை குளோனிங்கில், அசல் பொருளின் அனைத்து புலங்களின் சரியான நகலும் உருவாக்கப்படும். ஆனால், அசல் பொருளில் மற்ற பொருள்களை புலங்களாகக் குறிப்பிடுகின்றன, பின்னர் குளோன் () முறையை அழைப்பதன் மூலம் அந்த பொருட்களின் நகலும் உருவாக்கப்படும். இது குளோன் செய்யப்பட்ட பொருளை அசல் பொருளிலிருந்து சுயாதீனமாக்குகிறது மற்றும் எந்தவொரு பொருளிலும் செய்யப்பட்ட மாற்றங்கள் மறுபுறத்தில் பிரதிபலிக்காது.

முழு எண்ணாக ஜாவாவுக்கு அனுப்புகிறது

அதற்கான உதாரணத்தை நான் கீழே கொடுத்துள்ளேன்:

தொகுப்பு edureka class EduCourse குளோனபிள் {சரம் பாடநெறி 1 சரம் பாடநெறி 2 சரம் பாடநெறி 3 பொது கல்வி (சரம் crs1, சரம் crs2, சரம் crs3) {this.course1 = crs1 this.course2 = crs2 this.course3 = crs3} பாதுகாக்கப்பட்ட பொருள் குளோன் () CloneNotSupp வீசுகிறது return super.clone ()}} class EduLearner குளோனபிள் {int eduId சரம் கற்றவர் பெயர் EduCourse eduCourse public EduLearner (int eduId, String learnnerName, EduCourse eduCourse) {this.eduId = eduId this.learnerName = learn_ our our our our our our our ஒரு பொருளின் பாதுகாக்கப்பட்ட பொருள் குளோனின் ஆழ்ந்த நகலை உருவாக்குவதற்கான குளோன் () முறையை மீறுதல் () க்ளோன்நொட்ஸப்போர்ட் எக்ஸ்செஷன் வீசுகிறது {எடுலீனர் கற்றவர் = (எடுலெர்னர்) சூப்பர்.க்ளோன் () learn.eduCourse = (EduCourse) eduCourse.clone () திரும்பக் கற்றவர்}} பொது வகுப்பு DeepCloneSample {public static void main (string [] args) {EduCourse j2ee = new EduCourse ('Java', 'Spring', 'Microservices') EduLearner learn1 = new EduLearner (2811, 'Max', j2ee) EduLearner learn er2 = null try {// learn1 இன் ஒரு குளோனை உருவாக்கி அதை கற்றவர் 2 கற்றவர் 2 = (EduLearner) learnner1.clone ()} catch (CloneNotSupportedException e) {e.printStackTrace ()} // Learner1 System.out இன் அச்சிடும் விவரங்கள். println ('கற்றவர் 2 இன் விவரங்கள்:') System.out.println ('ஐடி:' + learnner1.eduId) System.out.println ('பெயர்:' + learner1.learnerName) System.out.println ('பாடநெறி ஐடி: '+ learnner1.eduCourse) //' learn1 'System.out.println (' கற்றவரின் பாடநெறிகள் 1: ') System.out.println (learner1.eduCourse.course1) System.out.println (learn1) இன் அனைத்து படிப்புகளையும் அச்சிடுகிறது. eduCourse.course2) System.out.println (learner1.eduCourse.course3) // Learner2 System.out.println ('கற்றவர் 2 இன் விவரங்கள்:') System.out.println ('Id:' + learner2.eduId ) System.out.println ('பெயர்:' + Learner2.learnerName) System.out.println ('பாடநெறி ஐடி:' + learnner2.eduCourse) // 'learn 2' System.out.println ('படிப்புகள் கற்றல் 2: ') System.out.println (learnner2.eduCourse.course1) System.out.printl n (learnner2.eduCourse.course2) System.out.println (learner2.eduCourse.course3) // 'learn2' இன் பாடநெறி 3 ஐ மாற்றுதல் learn22.eduCourse.course3 = 'JSP' // இந்த மாற்றம் அசலில் பிரதிபலிக்காது ' Learner1 'System.out.println (' கற்றவரின் பாடநெறிகள் 1: ') System.out.println (learner1.eduCourse.course1) System.out.println (learner1.eduCourse.course2) System.out.println (learner1.eduCourse. course3) // கற்றவரின் புதுப்பிக்கப்பட்ட பாடநெறிகள் 2 System.out.println ('கற்றவரின் படிப்புகள் 2:') System.out.println (learnner2.eduCourse.course1) System.out.println (learner2.eduCourse.course2) System.out. println (learnner2.eduCourse.course3)}}

வெளியீடு:

கற்றல் 2: ஐடி: 2811 பெயர்: அதிகபட்ச பாடநெறி ஐடி: edureka.EduCourse@15db9742 கற்றவரின் பாடநெறிகள் 1: ஜாவா ஸ்பிரிங் மைக்ரோ சர்வீசஸ் கற்றவரின் விவரங்கள் 2: ஐடி: 2811 பெயர்: அதிகபட்ச பாடநெறி ஐடி: edureka.EduCourse@6d06d69c கற்றல் 2 பாடநெறிகள் : ஜாவா ஸ்பிரிங் மைக்ரோ சர்வீசஸ் கற்றல் பாடநெறிகள் 1: ஜாவா ஸ்பிரிங் மைக்ரோ சர்வீசஸ் பாடநெறிகள் 2: ஜாவா ஸ்பிரிங் ஜே.எஸ்.பி.

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

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

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