1. அணுகல் மாற்றிகள்

ஒவ்வொரு முறைக்கும் முன், புரோகிராமர்கள் அணுகல் மாற்றிகள் என்று அழைக்கப்படுவதைக் குறிப்பிடலாம். இவை பின்வரும் முக்கிய வார்த்தைகளை உள்ளடக்கியது: public, protected, private.

இந்த அணுகல் மாற்றிகள் மற்ற வகுப்புகளின் அணுகலை ஒரு முறைக்கு கட்டுப்படுத்த உங்களை அனுமதிக்கின்றன.

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

மொத்தம் 3 அத்தகைய மாற்றிகள் உள்ளன, ஆனால் ஒரு முறைக்கு 4 வகையான அணுகல் உள்ளது. ஏனென்றால், அணுகல் மாற்றியமைப்பாளர் இல்லாதது ஏதோ ஒன்றைக் குறிக்கிறது.

இதிலிருந்து அணுகல்...
மாற்றியமைப்பவர்கள் எந்த வகுப்பு குழந்தை வகுப்பு அதன் தொகுப்பு அதன் வகுப்பு
public ஆம் ஆம் ஆம் ஆம்
protected இல்லை ஆம் ஆம் ஆம்
மாற்றி இல்லை இல்லை இல்லை ஆம் ஆம்
private இல்லை இல்லை இல்லை ஆம்

1. publicமாற்றி

மாற்றியமைப்புடன் குறிக்கப்பட்ட ஒரு முறை (அல்லது மாறி, அல்லது வகுப்பு) நிரலில் எங்கிருந்தும்public அணுகலாம் . இது திறந்தநிலையின் மிக உயர்ந்த அளவு - எந்த கட்டுப்பாடுகளும் இல்லை.

2. privateமாற்றி

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

3. மாற்றி இல்லை (இயல்புநிலை மாற்றி)

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

4. protectedமாற்றி

ஒரு முறை மாற்றியமைப்புடன் குறிக்கப்பட்டால் protected, அதை அதே வகுப்பு, அதே தொகுப்பு மற்றும் சந்ததியினரிடமிருந்து அணுகலாம் (முறை அறிவிக்கப்பட்ட வகுப்பைப் பெற்ற வகுப்புகள்). ஜாவா கோர் தேடலில் இந்த தலைப்பை இன்னும் விரிவாக ஆராய்வோம்.

publicஜாவா தொடரியல் தேடலின் முடிவை நீங்கள் அடையும் வரை, உங்கள் எல்லா முறைகளிலும் (அத்துடன் உங்கள் அனைத்து வகுப்புகள் மற்றும் வகுப்பு மாறிகள்) மாற்றியைப் பயன்படுத்தலாம் . நாங்கள் OOPயை தீவிரமாகக் கற்கத் தொடங்கும் போது உங்களுக்கு மற்ற மாற்றிகள் தேவைப்படும்.

அணுகல் மாற்றிகள் ஏன் தேவை?

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

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

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



2. staticமுக்கிய சொல்

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

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

ClassName.MethodName()

நிலையான முறைகளின் எடுத்துக்காட்டுகள்:

வகுப்பின் பெயர் நிலையான முறையின் பெயர்
Thread.sleep() Thread sleep()
Math.abs() Math abs()
Arrays.sort() Arrays sort()

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

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

ஏன்? நீங்கள் OOP கற்கத் தொடங்கும் போது இந்த கேள்விக்கு நீங்களே பதிலளிக்க முடியும் மற்றும் நிலையான முறைகள் எவ்வாறு செயல்படுகின்றன என்பதைப் புரிந்துகொள்வீர்கள்.



3. throwsமுக்கிய வார்த்தை

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

public static Type name(parameters) throws Exception
{
  method body
}

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

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


4. mainமுறை

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

அத்தகைய வரி முறை அறிவிப்பு என்று அழைக்கப்படுகிறது மற்றும் பின்வரும் பொதுவான வடிவத்தைக் கொண்டுள்ளது:

access modifier static Type name(parameters) throws exceptions
ஒரு முறை அறிவிப்பின் பொதுவான வடிவம்

, , அல்லது access modifiers எதுவும் இல்லைpublicprotectedprivate

முறை நிலையானதாக இருந்தால், staticமுக்கிய வார்த்தை தோன்றும் (நிலையற்ற முறைகளுக்கு இது இல்லை)

Typeதிரும்பும் மதிப்பின் வகை ( voidமுடிவு இல்லை என்றால்)

முறையின் அறிவிப்பில் அனைத்து முக்கிய வார்த்தைகளும் என்ன அர்த்தம் என்பதை இப்போது நீங்கள் புரிந்துகொண்டிருக்கலாம் main:

public static void main(String[] args) throws Exception
mainமுறையை அறிவிக்கிறது

main()முக்கிய வார்த்தையால் சுட்டிக்காட்டப்பட்டபடி, எந்த வகுப்பிலிருந்தும் முறைக்கான அணுகல் சாத்தியமாகும் public.

முறை நிலையானது, எனவே இதை வெளிப்படையாக அழைக்கலாம் Solution.main().

முறை mainஎந்த முடிவையும் தராது. திரும்பும் வகை void(வகை இல்லை).

இந்த mainமுறை வாதங்களை (!) எடுக்கும்: சரங்களின் வரிசை. மற்றும் அளவுரு பெயர் argsநம் மனதில் 'வாதங்களை' பரிந்துரைக்கிறது. நிரல் தொடங்கும் போது, ​​நீங்கள் அதை வாதங்களை அனுப்பலாம் - சரங்களின் வரிசை. args அவை முறையின் வரிசையில் அடங்கியிருக்கும் main().

(அல்லது அதன் வழித்தோன்றல்கள்) போன்ற கையாளப்படாத பிழைகள் Exceptionமுறையில் ஏற்படலாம் main().