Difference between revisions of "Java/C3/Subclassing-and-Method-Overriding/Tamil"

From Script | Spoken-Tutorial
Jump to: navigation, search
(Created page with "{| border=1 | '''Time''' | '''Narration''' |- | 00:01 | வணக்கம் ''' Subclassing''' மற்றும் '''Method overriding'''குறித்த '''spoke...")
 
Line 153: Line 153:
 
|-
 
|-
 
| 03:49
 
| 03:49
| அடுத்து type செய்க  '''manager dot setDepartment''' அடைப்புக்குறிகளில் இரட்டை மேற்கோள்களில் '''Accounts'''
+
| அடுத்து type செய்க  '''manager dot setDepartment''' அடைப்புக்குறிகளில் இரட்டை மேற்கோள்களில் '''Accounts'''  
  
  
Line 295: Line 295:
 
|-
 
|-
 
| 07:36
 
| 07:36
| '''getDetails() method தொடங்கும் முன்பு , '''@Override''' என type செய்யவும்   
+
| getDetails() method தொடங்கும் முன்பு , '''@Override''' என type செய்யவும்   
  
 
|-
 
|-
 
| 07:43
 
| 07:43
| இது '''override annotation என்பதாகும். ஒரு '''method''' , அதனுடைய '''superclass'''இல் உள்ள '''method'''ஐ  '''override''' செய்யும் நோக்கத்தினை இது குறிக்கிறது  
+
| இது override annotation என்பதாகும். ஒரு '''method''' , அதனுடைய '''superclass'''இல் உள்ள '''method'''ஐ  '''override''' செய்யும் நோக்கத்தினை இது குறிக்கிறது  
 
    
 
    
 
|-
 
|-
Line 314: Line 314:
 
|-
 
|-
 
| 08:10
 
| 08:10
| @Override''' என ஒரு '''method ''' annotate செய்யப்பட்ட பின், compiler எப்போது  '''error ''' காண்பிக்கும் என்றால் :
+
| @Override  என ஒரு '''method ''' annotate செய்யப்பட்ட பின், compiler எப்போது  '''error ''' காண்பிக்கும் என்றால் :
 
அந்த  ''' method''',  '''superclass''' இல்  தெரிவித்துள்ள ஒரு '''method'''ஐ  '''override''' செய்யும் போது ஆகும் .  
 
அந்த  ''' method''',  '''superclass''' இல்  தெரிவித்துள்ள ஒரு '''method'''ஐ  '''override''' செய்யும் போது ஆகும் .  
 
   
 
   
Line 399: Line 399:
 
|-
 
|-
 
| 10:42
 
| 10:42
|இந்த டுடோரியலை தமிழாக்கம் செய்து  குரல் கொடுத்தது ஐஸ்வர்யா.
+
|இந்த டுடோரியலை தமிழாக்கம் செய்து  குரல் கொடுத்தது சண்முகப்பிரியா.
 
நன்றி.
 
நன்றி.
 
|}
 
|}

Revision as of 18:32, 3 November 2017

Time Narration
00:01 வணக்கம் Subclassing மற்றும் Method overridingகுறித்த spoken-tutorialக்கு நல்வரவு.
00:06 இந்த tutorial இல் நாம் கற்கப் போவது:

subclassing extends keyword மற்றும் method overriding.

00:15 இதற்கு நாம் பயன்படுத்துவது

Ubuntu Linux version 12.04 JDK 1.7 மற்றும் Eclipse 4.3.1

00:25 இந்த tutorialஐ தொடர Java மற்றும் Eclipse IDE தெரிந்திருக்க வேண்டும் .


00:32 தெரியாவிட்டால், அதற்கான Java tutorials ஐ, எங்கள் வலைதளத்தில் காணவும்
00:37 முதலில் நாம் subclassing குறித்து தெரிந்து கொள்ள வேண்டும்
00:41 இது ஏற்கனவே இருக்கும் classஇல் இருந்து புது classஐ உருவாக்குவதற்கான வழிமுறை ஆகும்
00:46 இவ்வாறு உருவான புது class , subclass அல்லது derived class அல்லது child class என அழைக்கப்படும்
00:53 ஏற்கனவே உள்ள class superclass அல்லது base class அல்லது parent class என அழைக்கப்படும்.
01:00 இப்போது subclassஐ உருவாக்குவது எப்படி என பார்க்கலாம். ஏற்கனவே MyProject எனும் பெயரில் ஒரு projectஐ உருவாக்கி இருக்கிறேன்.


01:10 அதில் Employee என்ற பெயரில் ஒரு class ஐ உருவாக்கி இருக்கிறேன்
01:15 இது name மற்றும் email_address ஆகிய variables ஐக் கொண்டிருக்கும் .
01:19 மேலும் இந்த class, setter மற்றும் getter method களைக் கொண்டிருக்கும்
01:24 இதன் "getDetails()" எனும் method மூலம் '"name" மற்றும் "email_address"ஐ பெறலாம்
01:31 இப்போது Manager class ஐ பார்ப்போம்
01:35 இது name , email_address மற்றும் departmentஆகிய variables ஐக் கொண்டிருக்கும்
01:40 இங்கு நாம் Employee மற்றும் Manager class க்கு பொதுவாக சில variables இருப்பதைக் காணலாம்


01:47 name மற்றும் email_address , Employee class இல் உள்ளன. இவை Manager class இலும் இருப்பதைக் காணலாம்


01:57 இதனால் Manager classஐ, Employee classஇன் subclass ஆக்கலாம்
02:03 இதற்கு Manager classஇல் சில மாற்றங்களை செய்ய வேண்டும்
02:08 public class Managerஐ அடுத்து extends Employee என  டைப் செய்யவும்.
02:14 ஏற்கனவே இருக்கும் classஇல் இருந்து subclass ஐ உருவாக்க நாம் extends keywordஐ பயன்படுத்துகிறோம்
02:21 இரண்டு classகளிலும் பொதுவாக இருக்கும் variables இன் நகல்களை நீக்கவும்
02:26 எனவே Manager classஇல் இருந்து name மற்றும் email_address ஐ நீக்கவும்
02:32 மேலும் அதிலிருந்து setter மற்றும் getter method களை நீக்கவும்
02:37 இப்போது Manager classஇல் departmentஎனும் ஒரு variable மட்டுமே உள்ளது
02:43 department மீதான setter மற்றும் getter method களும் இருக்கின்றன
02:49 இவ்வாறு Manager class , Employee classஇன் உறுப்புகளை உபயோகிக்கும் பயனைப்  பெற்றுள்ளது
02:55 இவ்வாறு ஒரு class இல் இருந்து மற்றொரு class ஐ நீட்டிப்பது single inheritance ஆகும்
03:02 நான் TestEmployee என்று இன்னொரு classஐ உருவாக்கி இருக்கிறேன்
03:08 இப்போது main method இனுள் Manager class க்கான object ஐ உருவாக்கலாம்.
03:14 எனவே main methodஇனுள் , type செய்க:
Manager manager equal to   new Manager parentheses 


03:23 அடுத்து நாம் Manager class இன் setter method ஐ அழைக்கலாம்
03:28 எனவே type செய்க: manager dot setName' அடைப்புக்குறிகளில் இரட்டை மேற்கோள்களில் Nikkita Dinesh
03:38 அடுத்து type செய்க: manager dot setEmail அடைப்புக்குறிகளில் இரட்டை மேற்கோள்களில் abc at gmail dot com
03:49 அடுத்து type செய்க manager dot setDepartment அடைப்புக்குறிகளில் இரட்டை மேற்கோள்களில் Accounts


03:57 நீங்கள் வேறு ஏதேனும் name, email address ,department வேண்டுமானாலும் குறிப்பிடலாம்
04:02 இப்போது Manager object மூலம் getDetails() method ஐ அழைக்கலாம்
04:08 எனவே type செய்க System.out.println அடைப்புக்குறிகளுக்குள் manager dot getDetails
04:17 இப்போது இந்த program ஐ save செய்து பின்னர் run செய்யலாம்
04:21 நமக்கு கிடைத்துள்ள output

Name: Nikkita Dinesh Email: abc@gmail.com

04:30 இங்கு Manager class இன் object, getDetails() method ஐ அழைக்கிறது .
04:36 இப்போது Manager class'க்கு வருவோம்
04:39 இதில் getDetails() method காணப்படவில்லை.
04:43 இருந்தாலும் நமக்கு output கிடைத்துள்ளது . எவ்வாறென்றால் Manager class, Employee classextend செய்துள்ளது.
04:52 Manager class தானாகவே Employee class இன் variables மற்றும் method களை எடுத்துக் கொள்கிறது
04:59 எனவே, அதனுடைய parent class ஆன Employeeஇல், சரி பார்த்துக் கொள்கிறது
05:04 Employee class க்கு வருவோம். அது getDetails() method ஐ இங்கே பெறுகிறது
05:11 இங்கு department ஐ நாம் return செய்யாததைக் காணலாம். இதனாலேயே output இல் department தகவல் print ஆகவில்லை .
05:20 இப்போது getDetails method ஐ private ஆக மாற்றி, fileSave செய்யலாம்
05:27 TestEmployee classஇல் compilation error காட்டப்படுவதைப் பார்க்கலாம்
05:34 Employee பிரிவில் getDetails() method காணப்படவில்லை எனக் கூறுகிறது
05:40 getDetails() method ஐ அடைய முடியாது என்பதை இது குறிக்கிறது .
05:45 ஏனென்றால் getDetails() method ஐ 'private' என தெரிவித்துள்ளோம் .
05:52 ஒரு subclass அதனுடைய superclassஇன் private members ஐ, தனக்கு எடுத்துக் கொள்ள முடியாது
05:58 subclass , superclassஇன் private members ஐ நேரடியாக அடைய முடியாது
06:04 superclassக்கு public அல்லது protected method கள் இருக்கலாம்.
06:09 இந்த method' கள் அவற்றின் private field ஐ அடைய முடியும்.
06:13 subclass உம் கூட இந்த methodகள் மூலம் private fieldஐ அடைய முடியும் .
06:18 எனவே நாம் அதனைத் திரும்ப public என மாற்றலாம்
06:21 இப்போது Manager class இல் getDetails method ஐ சேர்க்கலாம் .
06:27 இந்த method , name, email_address மற்றும் department ஆகியவற்றை பெற்றுத் தரும்.
06:33 எனவே இப்போது type செய்ய வேண்டியது public String getDetails பின்னர் , அடைப்புக் குறிகள் .
06:39 methodஇனுள், returnஎன type செய்து, அடைப்புக்குறிகளுக்குள் Name plus getName() plus slash n plus Email plus getEmail() plus slash n plus Manager of plus getDepartment() என எழுதி, semicolon கொடுத்து, பின்னர் fileSaveசெய்யவும்.
07:07 இப்போது getDetails method, Manager' மற்றும் 'Employee' class இல் இருப்பதைக் காணலாம்
07:15 இரண்டு classகளிலும், method இன் , name, return type மற்றும் argument list ஆகியவற்றில் மாற்றம் இருக்காது
07:22 subclass இல் உள்ள ஒரு method , parent class இல் உள்ள ஒரு method ஐ எப்போது override செய்யுமெனில்,

name

return type மற்றும்

argument list இரண்டிலும் சரியாகப் பொருந்தி இருக்கும் போது.


07:33 இப்போது Manager class க்கு திரும்ப வருவோம்.
07:36 getDetails() method தொடங்கும் முன்பு , @Override என type செய்யவும்
07:43 இது override annotation என்பதாகும். ஒரு method , அதனுடைய superclassஇல் உள்ள methodoverride செய்யும் நோக்கத்தினை இது குறிக்கிறது
07:53 இப்போது annotation என்றால் என்ன என்பதைப் பார்ப்போம்
07:57 Annotations:

at (@) அடையாளக் குறியுடன் தொடங்கும் program குறித்த தகவல்களைக் கொடுக்கும் Code இயங்குவதில் எந்த விளைவுகளையும் ஏற்படுத்தாது.

08:10 @Override என ஒரு method annotate செய்யப்பட்ட பின், compiler எப்போது error காண்பிக்கும் என்றால் :

அந்த method, superclass இல் தெரிவித்துள்ள ஒரு methodoverride செய்யும் போது ஆகும் .

08:23 * method signature அதனுடைய superclass இல் வித்தியாசப்படும்.
08:28 இப்போது IDEக்கு திரும்ப வருவோம். அதில் Manager class ஐ பார்க்கலாம்.
08:34 at (@) அடையாளம், அடுத்து தொடர்வது annotation என்பதை compilerக்கு தெரிவிக்கிறது .
08:42 இங்கு getDetails() method , overridde ஆகியுள்ளதைக் காட்டுகிறது.
08:48 இப்போது TestEmployee class க்கு வருவோம்.
08:51 File ஐ save செய்து program ஐ run செய்யலாம் .
08:55 நமக்கு கிடைத்துள்ள output :

Name: Nikkita Dinesh

Email: abc@gmail.com

Manager of Accounts

09:05 இங்கு Manager class இன் object , getDetails() methodஐ அழைக்கிறது .
09:11 ஆனால் இந்த முறை, அது Manager classஇன் method ஐயே அழைக்கிறது.
09:16 இவ்வாறு parent class இன் methodஐ , subclass ஐக் கொண்டுoverride செய்கிறோம்.
09:23 இந்த tutorial இல் நாம் கற்றிருப்பதை சுருக்கமாகப் பார்ப்போம் .

Subclassing மற்றும் Method Overriding குறித்து கற்றோம்.

09:31 ஒருassignment ஆக, Vehicle எனும் classஐ உருவாக்கி, அதில் run எனும் method ஐக் கொண்டு, “The Vehicle is running” எனும் outputஐ பெற செய்யவும்.
09:40 அவ்வாறே Bike எனும் classஐ உருவாக்கி, அதில் run எனும் method மூலம் , “The Bike is running safely” எனprint செய்ய வைக்கவும்.
09:48 The Bike is running safely” என்பது output ஆக இருக்க வேண்டும்.
09:52 spoken tutorial திட்டம் குறித்து மேலும் தெரிந்து கொள்ள, இந்த தொடுப்பில் உள்ள வீடியோவைக் காணலாம். இது spoken tutorial திட்டம் பற்றி சுருங்க சொல்கிறது. இணைப்பு வேகமாக இல்லை எனில் தரவிறக்கி காணுங்கள்.
10:06 Spoken Tutorial திட்டக்குழு,

spoken tutorial களை பயன்படுத்தி செய்முறை வகுப்புகள் நடத்துகிறது இணையத்தில் பரிட்சை எழுதி தேர்வோருக்கு சான்றிதழ்களும் தருகிறது மேலும் அறிய mail எழுதவும் .... contact at spoken hyphen tutorial dot org

10:21 Spoken Tutorial பாடங்கள், Talk to a Teacher திட்டத்தின் முனைப்பாகும். இந்திய அரசு துவக்கிய MHRD இன் ஐசிடி மூலம் தேசிய கல்வித் திட்டம், இதற்கு ஆதரவு தருகிறது

மேலும் விவரங்களுக்கு: http://spoken-tutorial.org/NMEICT- Intro

10:42 இந்த டுடோரியலை தமிழாக்கம் செய்து குரல் கொடுத்தது சண்முகப்பிரியா.

நன்றி.

Contributors and Content Editors

Aishwarya raman, Priyacst