Java/C3/Subclassing-and-Method-Overriding/Gujarati
From Script | Spoken-Tutorial
Revision as of 15:14, 30 October 2017 by Jyotisolanki (Talk | contribs)
|
|
00:01 | Subclassing અને Method overriding પરનાં ટ્યુટોરીયલમાં સ્વાગત છે. |
00:06 | આ ટ્યુટોરીયલમાં, આપણે આપેલ વિશે શીખીશું: subclassing ,extends કીવર્ડ અને method overriding. |
00:15 | અહીં આપણે વાપરી રહ્યા છીએ: Ubuntu Linux આવૃત્તિ 12.04 , JDK 1.7 , Eclipse 4.3.1 |
00:25 | આ ટ્યુટોરીયલનાં અભ્યાસ માટે, તમને સામાન્ય Java અને Eclipse IDE નું જ્ઞાન હોવું અનિવાર્ય છે. |
00:32 | જો નથી, તો સંદર્ભિત Java ટ્યુટોરીયલો માટે, અમારી વેબસાઈટની મુલાકાત લો. |
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 | આ ધરાવે છે variables, name અને email_address. |
01:19 | આ class માટે setter અને getter methods પણ ધરાવે છે. |
01:24 | આ એક method "getDetails()" ધરાવે છે. આ method દ્વારા "name" અને "email_address" પાછું મળે છે. |
01:31 | હવે, ચાલો Manager class પર આવીએ. |
01:35 | આ ધરાવે છે variables, name, email_address અને department. |
01:40 | આપણે જોઈ શકીએ છીએ કે કેટલાક variables એ Employee અને Manager class આ બંને માટે સામાન્ય છે. |
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 કીવર્ડ વાપરીએ છીએ. |
02:21 | બંને class માં સામાન્ય રહેલ variables રદ્દ કરો. |
02:26 | તો, Manager class માંથી name અને email_address રદ્દ કરો. |
02:32 | સાથે જ એનું setter અને getter method રદ્દ કરો. |
02:37 | class 'Manager' માં, આપણી પાસે ફક્ત એક જ વેરીએબલ department રહેશે. |
02:43 | આપણી પાસે department માટે પણ setter અને getter method છે. |
02:59 | આ પ્રકારે, 'Manager' class એ 'Employee' class નાં સભ્યોને ઇનહેરીટ (વારસાઈ આપવી) કરે છે. |
02:55 | એક class ને બીજામાંથી વિસ્તારિત કરવાની આ રીતને single inheritance કહેવાય છે. |
03:02 | મેં TestEmployee નામનો બીજો એક class પણ બનાવ્યો છે. |
03:08 | main મેથડ અંતર્ગત, આપણે Manager ક્લાસનું object બનાવીશું. |
03:14 | તો, main method અંતર્ગત, ટાઈપ કરો: Manager manager બરાબર new Manager કૌંસ. |
03:23 | આગળ, આપણે Manager ક્લાસનાં setter મેથડો કોલ (આવ્હાન કરવું) કરીશું. |
03:28 | તો, ટાઈપ કરો, manager dot setName કૌંસ અને બમણા અવતરણમાં Nikkita Dinesh |
03:38 | ત્યારબાદ ટાઈપ કરો: manager dot setEmail કૌંસ અને બમણા અવતરણમાં abc at gmail dot com. |
03:49 | ત્યારબાદ ટાઈપ કરો, manager dot setDepartment કૌંસ અને બમણા અવતરણમાં Accounts. |
03:57 | તમે કોઈપણ name, email address અને department વાપરી શકો છો. |
04:02 | હવે, Manager ઓબજેક્ટ વાપરીને ચાલો getDetails() મેથડ કોલ કરીએ. |
04:08 | તો, ટાઈપ કરો: System.out.println કૌંસમાં manager dot getDetails. |
04:17 | હવે, ચાલો પ્રોગ્રામને save કરીને run કરીએ. |
04:21 | આપણે જોઈ શકીએ છીએ કે આપણને આ પ્રમાણે આઉટપુટ મળે છે:Name: Nikkita Dinesh , Email: abc@gmail.com |
04:30 | અહીં, 'Manager' class નો ઓબજેક્ટ getDetails() મેથડને કોલ કરે છે. |
04:36 | હવે, Manager ક્લાસ પર આવીએ. |
04:39 | આપણે જોઈ શકીએ છીએ કે અહીં કોઈપણ getDetails() મેથડ નથી. |
04:43 | પણ, હજીપણ આપણને આઉટપુટ મળે છે. આ એટલા માટે કારણ કે, Manager class એ Employee class વિસ્તારિત કરે છે. |
04:52 | Manager ક્લાસ એ આપમેળે Employee ક્લાસનાં વેરીએબલો (ચલો) અને method ને ઇનહેરીટ કરે છે. |
04:59 | તો, તે parent class માં તપાસ કરે છે જે છે Employee. |
05:04 | ચાલો Employee ક્લાસ પર આવીએ. તે અહીં getDetails() મેથડ શોધે છે. |
05:11 | નોંધ લો આપણે department પાછું આપ્યું નથી. પરિણામ સ્વરૂપે, તેણે આઉટપુટમાં department પ્રિંટ કર્યું નહોતું. |
05:20 | હવે, ચાલો getDetails મેથડને private માં બદલીએ. ફાઈલને Save કરીએ. |
05:27 | આપણે જોઈ શકીએ છીએ કે આપણને TestEmployee class માં કમ્પાઈલેશન એરર મળે છે. |
05:34 | તે દર્શાવે છે "The method getDetails() from the type Employee is not visible". |
05:40 | આનો અર્થ એ થાય છે કે getDetails() મેથડને એક્સેસ કરી શકાતું નથી. |
05:45 | એટલા માટે આપણે getDetails() મેથડને 'private' તરીકે જાહેર કર્યું છે. |
05:52 | એક subclass પોતાના superclass નાં private સભ્યોને ઇનહેરીટ કરતુ નથી. |
05:58 | Subclass એ superclass નાં private સભ્યોને સીધે સીધું એક્સેસ કરી શકતું નથી. |
06:04 | સુપરક્લાસ public અથવા protected મેથડો ધરાવી શકે છે. |
06:09 | આ method તેમનાં private field એક્સેસ કરી શકે છે. |
06:13 | આ method મારફતે subclass પણ private field એક્સેસ કરી શકે છે. |
06:18 | તો, ચાલો તેને ફરી પાછું public માં બદલીએ. |
06:21 | હવે, ચાલો Manager ક્લાસમાં getDetails મેથડ સમાવિષ્ટ કરીએ. |
06:27 | આ method પાછું આપશે name, email_address અને department. |
06:33 | તો, ટાઈપ કરો: public String getDetails કૌંસમાં. |
06:39 | method ની અંદર, ટાઈપ કરો: return કૌંસમાં Name પ્લસ getName() પ્લસ slash n પ્લસ Email પ્લસ getEmail() પ્લસ slash n પ્લસ Manager of પ્લસ getDepartment() અર્ધવિરામ. ફાઈલને Save કરો. |
07:07 | નોંધ લો હવે, આપણી પાસે 'Manager' અને 'Employee' class બંનેમાં getDetails મેથડ છે. |
07:15 | બંને classes માં method ની name, return type અને argument list સમાન છે. |
07:22 | subclass માનું method એ parent class માં method ને override કરે છે એવું કહેવાશે જો:name ,return type ,argument list એકસમાન મેચ (મેળ ખાવું) થાય છે. |
07:33 | Manager ક્લાસ પર પાછા આવીએ. |
07:36 | getDetails() method ની પહેલા, ટાઈપ કરો: @Override. |
07:43 | આ એક override annotation છે. આ દર્શાવે છે કે method એ superclass માંનાં method ને override કરવા હેતુ છે. |
07:53 | હવે, ચાલો જોઈએ કે annotation શું છે. |
07:57 | Annotations: શરુ થાય છે at (@) ચિન્હ અક્ષરથી પ્રોગ્રામ વિશે ડેટા આપે છે.કોડનાં ઓપરેશન (કામગીરી) પર સીધે સીધી કોઈ અસર ધરાવતું નથી. |
08:10 | method જો @Override વડે એનોટેટ (ટીપ્પણી) કર્યું હોય તો, કમ્પાઈલર error ઉત્પન્ન કરશે જો: method એ superclass માં જાહેર કરેલ method ને override કરે છે. |
08:23 | method signature એ તેનાં પોતાના superclass માં વિભિન્ન છે. |
08:28 | હવે, ચાલો પાછા IDE પર આવીએ. Manager class પર પાછા આવીએ. |
08:34 | at (@) ચિન્હ અક્ષર કમ્પાઈલરને દર્શાવે છે કે annotation શું અનુસરે છે. |
08:42 | અહીં, તે દર્શાવે છે કે getDetails() મેથડ એ overridden છે. |
08:48 | ચાલો TestEmployee class પર આવીએ. |
08:51 | ફિલ્ડ (વિસ્તાર) ને સંગ્રહો અને પ્રોગ્રામ 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 | આ રીતે, આપણે subclass દ્વારા parent class નાં method ને override કરીએ છીએ. |
09:23 | ચાલો સારાંશ લઈએ. આ ટ્યુટોરીયલમાં, આપણે આપેલ વિશે શીખ્યા: Subclassing અને Method Overriding. |
09:31 | assignment તરીકે, એક class Vehicle બનાવો જે કે run મેથડ ધરાવે જે પ્રિંટ કરે “The Vehicle is running.” |
09:40 | સાથે જ એક ક્લાસ Bike બનાવો જે run મેથડ ધરાવે જે પ્રિંટ કરે “The Bike is running safely.” |
09:48 | આઉટપુટ હોવું જોઈએ “The Bike is running safely.” |
09:52 | સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ વિશે વધુ જાણવા માટે, આપેલ લીંક ઉપર ઉપલબ્ધ વિડીઓ નિહાળો. તે સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ માટે સારાંશ આપે છે. જો તમારી પાસે સારી બેન્ડવિડ્થ ન હોય તો, તમે ડાઉનલોડ કરી તે જોઈ શકો છો. |
10:06 | સ્પોકન ટ્યુટોરીયલ પ્રોજેક્ટ ટીમ: સ્પોકન ટ્યુટોરીયલોની મદદથી વર્કશોપ આયોજિત કરે છે. જેઓ ઓનલાઇન પરીક્ષા પાસ કરે છે તેમને પ્રમાણપત્ર આપે છે.
વધુ વિગતો માટે, અમને contact at spoken hyphen tutorial dot org પર લખો. |
10:21 | Spoken Tutorial પ્રોજેક્ટ એ Talk to a Teacher પ્રોજેક્ટનો એક ભાગ છે. જે આઇસીટી, એમએચઆરડી, ભારત સરકાર દ્વારા શિક્ષણ પર નેશનલ મિશન દ્વારા આધારભૂત છે.આ મિશન વિશે વધુ માહીતી આ લીંક ઉપર ઉપલબ્ધ છે: http://spoken-tutorial.org/NMEICT- Intro |
10:42 | IIT Bombay તરફથી ભાષાંતર કરનાર હું, ચેતન સોલંકી વિદાય લઉં છું. જોડાવાબદ્દલ આભાર. |