Java/C3/Using-final-keyword/Sanskrit
Time | Narration |
00:01 | Using final keyword इति स्पोकन् ट्युटोरियल् प्रति स्वागतम् । |
00:05 | पाठेऽस्मिन् वयं, final इति कीवर्ड् अपि च तस्योपयोगः कदा करणीयः इति ज्ञास्यामः । |
00:11 | तथा च वयम् -
final वेरियेबल्स्, final मेथड्स्, final क्लासस् इत्येतेषां विषयं ज्ञास्यामः । |
00:18 | इदं ट्युटोरियल् रेकोर्ड् कर्तुमहम्,
उबण्टु लिनक्स् 12.04 आवृत्तिः, JDK 1.7, Eclipse 4.3.1 इत्येतानि उपयुञ्जे । |
00:30 | पाठमिदम् अनुसर्तुं भवद्भ्यः जावा तथा एक्लिप्स् ऐ डि ई अनयोः किञ्चिज्ज्ञानमावश्यकम् । |
00:36 | युष्मभ्यं सब्-क्लासिङ्ग् अपि च मेथड् ओवर् रैडिङ्ग् विषयमपि ज्ञातं स्यात् । |
00:41 | नास्ति चेत् तत्सम्बद्ध-जावा-पाठार्थं अस्माकं जालपुटं पश्यन्तु । |
00:46 | वयमादौ final इति कीवर्ड् ज्ञास्यामः । |
00:50 | “फैनल्” इतीदं जावा मध्ये एकं कीवर्ड् अथवा आरक्षितपदं वर्तते । |
00:55 | इदं वेरियेबल्स् इत्येतेभ्यः, मेथड्स् इत्येतेभ्यः, क्लासस् इत्येतेभ्यश्च विनियोक्तुं शक्नुमः । |
01:01 | वयमधुना पैनल् वेरियेबल् विषयं ज्ञास्यामः । |
01:05 | फैनल् वेरियेबल् इत्यस्य मूल्यस्य परिवर्तनम् अशक्यम् । अर्थात् तदेकं “कोन्स्टेण्ट्” वर्तते । |
01:13 | अहमधुना Eclipse IDE इत्यस्मै प्रतिवर्तनं करोमि । पूर्वतन पाठे एव अहं MyProject इति प्रोजेक्ट् रचिरवान् आसम् । |
01:22 | अतः वयं प्रकल्पस्य Employee क्लास् गच्छाम । |
01:26 | name इति वेरियेबल् प्रति आगच्छतु । |
01:30 | name वेरियेबल् इत्यस्यादौ final कीवर्ड् संयोजयन्तु । वयमधुना name इति वेरियेबल् final इति परिवर्तितवन्तः । |
01:40 | वयमिदं name इति वेरियेबल्, "sneha" इति मूल्येन इनिशियलैस् कुर्मः । |
01:45 | इदं प्रोग्राम् सेव् कृत्वा रन् कुर्मः । |
01:48 | अस्माभिः The final field Employee.name cannot be assigned इति कम्पैलेशन् एरर् प्राप्यते । |
01:55 | यतो हि final वेरियेबल् name इतीदं, पूर्वमेव डिक्लेर् भूत्वा इनिशियलैस् जातम् । |
02:05 | final वेरियेबल्, केवलम् एकवारं इनिशियलैस् भवितुमर्हति । |
02:08 | वयमतः setName मेथड् इतीदं कोमेण्ट् करवामहै । इदं name इत्यस्य परवर्तनं करोति । |
02:14 | इदं क्लास् सेव् करोतु । |
02:16 | अधुना TestEmployee क्लास् प्रति आगच्छन्तु । |
02:19 | main मेथड् प्रति आगत्य manager.setName("Nikkita Dinesh"); इति पङ्क्तिं कमेण्ट् कुर्वन्तु । |
02:26 | इदं setName मेथड् इत्यस्य इन्स्टन्स् वर्तते इत्यतः वयमिदं पङ्क्तिं कमेण्ट् कृतवन्तः । |
02:31 | वयं तदानीमेव Employee क्लास् मध्ये , setName मेथड् कमेण्ट् कृतवन्तः । |
02:35 | अधुना क्लास् रक्षित्वा प्रोग्राम् रन् कुर्वन्तु । |
02:38 | उत्तमम्!!! वयं फलितं प्राप्तवन्तः ।
Name: Sneha Email: abc@gmail.com Manager of: Accounts |
02:47 | वयं TestEmployee क्लास् तथा Employee क्लास् मध्ये, वेरियेबल्स् इतीमानि एतैः मूल्यैः सह इनिशियलैस् कृतवन्तः इत्यतः, इदं फलितं प्राप्तवन्तः । |
02:58 | अधुना Employee क्लास् इत्यस्य final वेरियेबल् name प्रति आगच्छन्तु । |
03:02 | final वेरियेबल् name इत्यस्य इनिशियलैस्ड् वेल्यू, अर्थात् “sneha” इतीदं निष्कासयन्तु । |
03:08 | setName मेथड् इत्यस्य कोमेण्ट् इत्यस्य निरसनं करोतु । |
03:12 | प्रोग्राम् सेव् कृत्वा रन् कुर्वन्तु । |
03:14 | अस्माभिः एरर् प्राप्यते : The final field Employee.name cannot be assigned. |
03:20 | यतो हि, final वेरियेबल् इनिशियलैस् न कृतं चेत् “कन्स्ट्रक्टर्” इदं इनिशियलैस् कर्तुं शक्यते । |
03:28 | किमर्थमिति चेत्, अस्य परिवर्तनं प्रोग्राम् मध्ये अन्यत्र असाध्यम् । |
03:33 | अतः, Employee क्लास् मध्ये एकं कन्स्ट्रक्टर् रचयाम । कन्स्ट्रक्टर् विषयं वयं ज्ञातवन्तः । |
03:43 | कन्स्ट्रक्टर् अपि क्लास् इत्यस्यैव नाम प्राप्तवदस्तीति ज्ञातम् । |
03:47 | अतः एवं टङ्कयन्तु :
Employee, parentheses, open and close curly brackets अपि च कर्लि ब्रेकेट् अन्तः वयं वेरियेबल् name इतीदं “sneha” सेमिकोलन् इत्यनेन सह इनिशियलैस् कुर्मः । |
04:08 | setName मेथड् इतीदं कोमेण्ट् कुर्वन्तु । |
04:12 | प्रोग्राम् इतीदं रक्षित्वा रन् कुर्वन्तु । |
04:15 | अस्मदभीष्टं फलितं प्राप्तवन्तः । |
04:17 | कन्स्ट्रक्टर् मध्ये, फैनल् वेरियेबल् सफलताया इनिशियलैस् जातम् । |
04:22 | वयमधुना “फैनल् स्टेटिक् वेरियेबल्स्” विषयं ज्ञास्यामः । |
04:26 | Employee क्लास् मध्ये, फैनल् वेरियेबल् प्रति आगच्छन्तु । |
04:30 | final कीवर्ड् इत्यस्मात् प्राक् static कीवर्ड् संयोजयन्तु । वयमधुना फैनल् वेरियेबल् इतीदं स्टेटिक् इति परिवर्तनं कृतवन्तः । |
04:38 | प्रोग्राम् इत्यस्य सेव् तथा रन् च कुर्वन्तु । |
04:40 | अस्माभिः The final field Employee.name cannot be assigned इति एरर् दृश्यते । |
04:46 | अस्य कारणं, कन्स्ट्रक्टर् मध्ये, static final वेरियेबल्स् इनिशियलैस् कर्तुमशक्यम् । |
04:53 | तेषां डिक्लेर् करणकाले एव वेल्यू असैन् कर्तव्यम् । अथवा तानि “स्टेटिक् ब्लोक्स्”-मध्ये डिक्लेर् कर्तव्यम् । |
05:01 | स्टेटिक्-वेरियेबल्स् इतीमानि, एकस्य क्लास् इत्यस्य सर्वाणि ओब्जेक्ट्स् मध्ये, वितरणं कुर्मः । |
05:06 | नूतन ओब्जेक्ट् विरच्यते चेत्, स्टेटिक् वेरियेबल् अन्यं भवितुमर्हति । स्टेटिक् वेरियेबल् , फैनल् भविष्यति चेत् अस्यानुमतिः नास्ति । |
05:14 | Eclipse IDE प्रति आगच्छन्तु । |
05:17 | वयमधुना एकं स्टेटिक् ब्लोक् रचयाम । |
05:20 | तदर्थं, Employee क्लास्-मध्ये अस्माभिः रचितं कन्स्ट्रक्टर् प्रति आगच्छाम । |
05:26 | अत्र, Employee अपि च आवरणस्य स्थाने static इति टङ्कयाम । वयमधुना एकं स्टेटिक् ब्लोक् रचितवन्तः । |
05:35 | अधुना प्रोग्राम् इत्यस्य सेव् तथा रन् च कुर्मः । |
05:38 | अस्माभिः फलितं प्राप्तम् । वयं सफलतया static final वेरियेबल् इनिशियलैस् कृतवन्तः । |
05:46 | वयमधुना फैनल् वेरियेबल् इतीदं, मेथड् इत्यस्मै पेरामीटर् रूपेण उपयुञ्ज्महे । |
05:52 | Employee क्लास् मध्ये setEmail मेथड् प्रति आगच्छन्तु । |
05:55 | String newEmail इत्यस्मात् प्राक् final कीवर्ड् संयोजयन्तु । वयमिदं पेरामीटर् फैनल् कृतवन्तः । |
06:03 | अधुना प्रोग्राम् रक्षित्वा रन् कुर्वन्तु । |
06:06 | अस्माभिः फलितं प्राप्तम् । |
06:09 | अधुना setEmail मेथड् प्रति आगच्छन्तु ।
मेथड् अन्तः एवं टङ्कयन्तु : newEmail is equal to abc@gmail.com सेमिकोलन् । |
06:28 | वयं newEmail फैनल् वेरियेबल् परिवर्तनं कृतवन्तः । |
06:32 | पुनः, प्रोग्राम् रक्षित्वा रन् कुर्मः । |
06:35 | अस्मभिः एवं एरर् प्राप्यते : The final local variable newEmail cannot be assigned. |
06:42 | यतो हि, फैनल् वेरियेबल् एकस्मै मेथड् इत्यस्मै पेरामीटर् वर्तते चेत्, तस्मात् मेथड् तः तं परिवर्तयितुम् असाध्यम् । |
06:50 | अतः, वयं वेरियेबल् इत्यस्य परिवर्तनं निष्कासयामः । |
06:54 | अधुना final मेथड् विषयं ज्ञास्यामः । Employee क्लास् मध्ये getDetails इति मेथड् प्रति आगच्छन्तु । |
07:01 | getDetails मेथड् इत्यस्मात् प्राक्, final कीवर्ड् संयोजयन्तु । वयमधुना मेथड् इतीदं फैनल् कृतवन्तः । |
07:08 | प्रोग्राम् रक्षित्वा रन् कुर्वन्तु । |
07:10 | अस्माभिरिदम् एरर् प्राप्यते : class Manager overrides final method getDetails(). |
07:16 | Manager क्लास् मध्ये getDetails() मेथड् प्रति आगच्छन्तु । |
07:21 | अस्य कारणमस्ति यत्, भवद्भिः यत्किमपि मेथड् फैनल् इति परिवर्त्यते चेत्, भवद्भिः तस्य ओवर्-रैड् करणमशक्यम् । |
07:29 | Manager क्लास् इत्यस्य getDetails() मेथड् , Employee क्लास् इत्यस्य getDetails() मेथड् इतीदम् ओवर्-रैड् करोति । |
07:36 | final मेथड्, private यद्यभविष्यत् तदा किं भविष्यति? |
07:39 | चैल्ड्-क्लासस्, private मेथड्स् इतीमानि इन्हेरिट् न कुर्वन्ति । |
07:43 | वयमतः, getDetails() मेथड् इतीदं चैल्ड्-क्लास् मध्ये संयोजितुमर्हामः । तत्कर्तुं प्रयत्नं कुर्वन्तु । |
07:51 | Eclipse IDE प्रति आगच्छाम । |
07:54 | Employee क्लास् मध्ये, getDetails() मेथड् इत्यस्मात् पूर्वं विद्यमानं final कीवर्ड् निष्कासयन्तु । |
08:03 | फैनल् वेरियेबल् name इत्यस्मात् पूर्वं विद्यमानं static कीवर्ड् निष्कासयन्तु । |
08:10 | अधुना कन्स्ट्रक्टर् इतीदं फैनल् इति डिक्लेर् कर्तुमर्हति वा नवेति जानाम । |
08:15 | तदर्थं,पुनः वयं एकं कन्स्ट्रक्टर् रचयाम । static इत्यस्य स्थाने एवं टङ्कयन्तु : Employee parentheses. |
08:26 | कन्स्ट्रक्टर् इत्यस्मात् प्राक्, final कीवर्ड् संयोजयन्तु । |
08:31 | प्रोग्राम् रक्षित्वा रन् कुर्वन्तु । |
08:36 | अस्माभिरिदम् एरर् प्राप्यते : Illegal modifier for the constructor in type Employee. |
08:42 | अस्य कारणमस्ति यत्, कन्स्ट्र्क्टर्स् इतीमानि इन्हेरिट् भवितुं नार्हन्ति । अतः कन्स्ट्रक्टर् फैनल् न जायते । |
08:50 | वयं कन्स्ट्रक्टर् इत्यस्मात् पूर्वं विद्यमानं final कीवर्ड् निष्कासयामः । |
08:54 | वयमधुना, final क्लास् विषयं ज्ञास्यामः । |
08:57 | Employee क्लास् इतीदं final इति परिवर्तयितुं, क्लास् तः पूर्वं final कीवर्ड् संयोजयन्तु । |
09:03 | प्रोग्राम् रक्षित्वा रन् कुर्वन्तु । |
09:06 | अस्माभिरिदम् एरर् प्राप्यते : The method setEmail is undefined for the type Manager. |
09:12 | सत्यम् एरर् अस्माभिः ज्ञातव्यं चेत् , TestEmployee क्लास् आगत्य अधस्तन पङ्क्तीः कोमेण्ट् करणीयाः । |
09:21 | manager.setEmail("abc@gmail.com"); manager.setDepartment("Accounts"); |
09:28 | क्लास् रक्षित्वा प्रोग्राम् रन् कुर्वन्तु । |
09:31 | वस्तुतः एरर् एवमस्ति : The type manager cannot subclass the final class Employee. |
09:40 | अत्र, Manager क्लास्, Employee क्लास् इतीदं एक्स्टेण्ड् (extend) करोति । |
09:45 | वयमतः Employee क्लास् प्रत्यागत्य, फैनल् कीवर्ड् निष्कासयाम । क्लास् सेव् कुर्मः । |
09:54 | TestEmployee क्लास् प्रति आगच्छन्तु । अधस्तन पङ्क्तीः अन्-कोमेण्ट् कुर्वन्तु ।
manager.setEmail("abc@gmail.com"); manager.setDepartment("Accounts"); |
10:06 | क्लास् इतीदं रक्षित्वा प्रोग्राम् रन् कुर्वन्तु । |
10:09 | अस्मदभीष्टं फलितं प्राप्तम् । |
10:12 | सङ्क्षेपेण अस्मिन् पाठे वयम् :
final कीवर्ड् कदा इन्वोक् कर्तव्यम्, final वेरियेबल्स्, final मेथड्स् अपि च फैनल् क्लासस् इत्येतेषां विषयान् ज्ञातवन्तः । |
10:27 | पाठनियोजनार्थम्,
पूर्वतन पाठे अस्माभिः उपयुक्ताभ्यां Bike तथा Vehicle क्लास् इत्येताभ्यां, Using final keyword पाठे उपयुक्तस्तराणां पुनरावर्तनं कुर्वन्तु । |
10:37 | जावा मध्यस्थानि फैनल् क्लासस् लिखन्तु । |
10:41 | स्पोकन् ट्युटोरियल् विषये अधिकविवरणं प्राप्तुं लिङ्क् मध्यस्थं चलच्चित्रं पश्यन्तु । |
10:47 | स्पोकन् ट्युटोरियल् प्रकल्पगणः :
कार्यशालां चालयति अपि च अन्तर्जालीयपरीक्षायाम् उत्तीर्णेभ्यः प्रमाणपत्रं यच्छति । अधिकविवरणं प्राप्तुं अधस्तन पर्चन्यै लिखन्तु ।. |
10:56 | स्पोकन् ट्युटोरियल् प्रकल्पः, टोक् टु ए टीचर् योजनायाः भागः अस्ति । अयं राष्ट्रिय साक्षरता मिशन्, ICT, MHRD द्वारा भारतसर्वकारस्य अनुदानं प्राप्तवानस्ति ।
पाठस्यास्य अनुवादकः प्रवाचकश्च श्री नवीनभट्टः उप्पिनपट्टणम् । धन्यवादाः । |