Difference between revisions of "Java/C3/Polymorphism/Kannada"

From Script | Spoken-Tutorial
Jump to: navigation, search
(Created page with "{| border=1 ||'''Time''' || '''Narration''' |- ||00:01 || ಜಾವಾದಲ್ಲಿ ಪಾಲಿಮಾರ್ಫಿಸಂ ಕುರಿತ ಸ್ಪೋಕನ್‌ ಟ್ಯ...")
 
Line 361: Line 361:
 
|| ಸ್ಪೋಕನ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ಪ್ರಾಜೆಕ್ಟ್‌ ತಂಡವು ಕಾರ್ಯಾಗಾರವನ್ನು ನಡೆಸುತ್ತದೆ ಮತ್ತು ಆನ್‌ ಲೈನ್‌ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಉತ್ತೀರ್ಣರಾದವರಿಗೆ ಪ್ರಮಾಣಪತ್ರವನ್ನು ನೀಡುತ್ತದೆ. ಹೆಚ್ಚಿನ ಮಾಹಿತಿಗಾಗಿ ನಮಗೆ ಪತ್ರ ಬರೆಯಿರಿ.
 
|| ಸ್ಪೋಕನ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ಪ್ರಾಜೆಕ್ಟ್‌ ತಂಡವು ಕಾರ್ಯಾಗಾರವನ್ನು ನಡೆಸುತ್ತದೆ ಮತ್ತು ಆನ್‌ ಲೈನ್‌ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಉತ್ತೀರ್ಣರಾದವರಿಗೆ ಪ್ರಮಾಣಪತ್ರವನ್ನು ನೀಡುತ್ತದೆ. ಹೆಚ್ಚಿನ ಮಾಹಿತಿಗಾಗಿ ನಮಗೆ ಪತ್ರ ಬರೆಯಿರಿ.
  
 +
|-
 
||10:51
 
||10:51
 
|| ‘ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್’ ಪ್ರೊಜೆಕ್ಟ್, NMEICT, MHRD, ಭಾರತ ಸರ್ಕಾರದ ನೆರವು ಪಡೆದಿದೆ. ಕೆಳಗಿನ ಲಿಂಕ್ ನಲ್ಲಿ ಈ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಲಭ್ಯವಿದೆ.
 
|| ‘ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್’ ಪ್ರೊಜೆಕ್ಟ್, NMEICT, MHRD, ಭಾರತ ಸರ್ಕಾರದ ನೆರವು ಪಡೆದಿದೆ. ಕೆಳಗಿನ ಲಿಂಕ್ ನಲ್ಲಿ ಈ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಲಭ್ಯವಿದೆ.

Revision as of 16:26, 4 April 2020

Time Narration
00:01 ಜಾವಾದಲ್ಲಿ ಪಾಲಿಮಾರ್ಫಿಸಂ ಕುರಿತ ಸ್ಪೋಕನ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ಗೆ ಸ್ವಾಗತ.
00:06 ಈ ಟ್ಯುಟೋರಿಯಲ್‌ ನಲ್ಲಿ ನಾವು ಈ ಕೆಳಗಿನ ವಿಷಯಗಳನ್ನು ಕಲಿಯಲಿದ್ದೇವೆ:

ಜಾವಾದಲ್ಲಿ ಪಾಲಿಮಾರ್ಫಿಸಂ ರನ್-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ವರ್ಚುವಲ್‌ ಮೆಥಡ್‌ ಇನ್ವೊಕೇಶನ್‌ ಮತ್ತು ಕಂಪೈಲ್‌-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ.

00:10 ಇಲ್ಲಿ ನಾವು,

ಉಬಂಟು ಲೀನಕ್ಸ್‌ ವರ್ಶನ್‌ 12.04, JDK ವರ್ಶನ್ 1.7 ಮತ್ತು ಎಕ್ಲಿಪ್ಸ್ 4.3.1 ಬಳಸಲಿದ್ದೇವೆ.

00:31 ಈ ಟ್ಯುಟೋರಿಯಲ್‌ ಅನುಸರಿಸಲು ನೀವು ಜಾವಾ ಮತ್ತು ಎಕ್ಲಿಪ್ಸ್‌ ಐ.ಡಿ.ಇ ಯ ಮೂಲಭೂತ ಜ್ಞಾನ ಹೊಂದಿರಬೇಕು.
00:37 ನೀವು ಸಬ್‌ ಕ್ಲಾಸಿಂಗ್‌ ಮತ್ತು ಮೆಥಡ್‌ ಓವರ್‌ ರೈಡಿಂಗ್‌ ಮತ್ತು ಓವರ್‌ ಲೋಡಿಂಗ್‌ ನ ಜ್ಞಾನ ಹೊಂದಿರಬೇಕು.
00:43 ಇಲ್ಲದಿದ್ದರೆ, ಸಂಬಂಧಿತ ಜಾವಾ ಟ್ಯುಟೋರಿಯಲ್‌ ಗಳಿಗೆ ದಯವಿಟ್ಟು ನಮ್ಮ ವೆಬ್‌ ಸೈಟ್‌ ಗೆ ಭೇಟಿ ನೀಡಿ.
00:48 ಪಾಲಿಮಾರ್ಫಿಸಂ ಎಂದರೆ ಅಬ್ಜೆಕ್ಟ್‌ ಒಂದು ಅನೇಕ ಫಾರ್ಮ್‌ ಗಳನ್ನು ಸ್ವೀಕರಿಸುವ ಸಾಮರ್ಥ್ಯವಾಗಿದೆ.
00:54 ಪಾಲಿಮಾರ್ಫಿಸಂನ ಪ್ರಮುಖ ಲಾಭಗಳೆಂದರೆ:

1. ಸಂಕೀರ್ಣತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ಮತ್ತು 2. ಕೋಡ್‌ ಮರುಬಳಕೆಯ ಸಾಧ್ಯತೆ.

01:03 ಜಾವಾದಲ್ಲಿ ಎರಡು ವಿಧಗಳ ಪಾಲಿಮಾರ್ಫಿಸಂ ಇವೆ:

ಅವೆಂದರೆ ಕಂಪೈಲ್-ಟೈಂ ಮತ್ತು ರನ್-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ.

01:11 ಕಂಪೈಲ್-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಅನ್ನು ಮುಖ್ಯವಾಗಿ ಮೆಥಡ್‌ ಓವರ್‌ ಲೋಡಿಂಗ್‌ ಎಂದು ಗುರುತಿಸಲಾಗುತ್ತದೆ. ಇದನ್ನು ಸ್ಟಾಟಿಕ್‌ ಬೈಂಡಿಂಗ್‌ ಎಂದು ಸಹ ಕರೆಯಲಾಗುತ್ತದೆ.
01:20 ರನ್-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಅನ್ನು ಮುಖ್ಯವಾಗಿ ಮೆಥಡ್‌ ಓವರ್‌ ರೈಡಿಂಗ್‌ ಎಂದು ಗುರುತಿಸಲಾಗುತ್ತದೆ. ಇದನ್ನು ಡೈನಾಮಿಕ್‌ ಬೈಂಡಿಂಗ್‌ ಎಂದು ಸಹ ಕರೆಯಲಾಗುತ್ತದೆ.
01:29 ನಾವು ಈಗಾಗಲೇ ಮೆಥಡ್‌ ಓವರ್‌ ರೈಡಿಂಗ್‌ ಎನ್ನಲಾಗುವ ರನ್‌-ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಅನ್ನು ಕಲಿತಿದ್ದೇವೆ.
01:35 ಈಗ ಎಕ್ಲಿಪ್ಸ್‌ ಐ.ಡಿ.ಇ ಯತ್ತ ಬೆಳಕು ಹರಿಸೋಣ. ನಾನು ಕಳೆದ ಟ್ಯುಟೋರಿಯಲ್‌ ನಲ್ಲಿ ಮೈಪ್ರಾಜೆಕ್ಟ್‌ ಎಂಬ ಪ್ರಾಜೆಕ್ಟ್‌ ಅನ್ನು ರಚಿಸಿದ್ದೇನೆ.
01:44 ಯೂಸಿಂಗ್‌ ಫೈನಲ್‌ ಕೀವರ್ಡ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ನ ಕೋಡ್‌ ಫೈಲ್‌ ಗಳನ್ನು ನಾವು ಬಳಸೋಣ.
01:49 ಎಂಪ್ಲೋಯಿ ಕ್ಲಾಸ್‌ ಇಲ್ಲಿ ಪೇರೆಂಟ್‌ ಕ್ಲಾಸ್‌ ಆಗಿದೆ.
01:52 ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ಇಲ್ಲಿ ಸಬ್‌ ಕ್ಲಾಸ್‌ ಆಗಿದೆ.
01:55 ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌, ಹೆಚ್ಚುವರಿ ವೇರಿಯೇಬಲ್‌ ಡಿಪಾರ್ಟ್‌ ಮೆಂಟ್‌ ಅನ್ನು ಹೊಂದಿರುತ್ತದೆ.
02:01 ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ವಿಧಾನ getDetails(), ಎಂಪ್ಲೋಯಿ ಕ್ಲಾಸ್‌ ವಿಧಾನ getDetails() ಅನ್ನು ಓವರ್‌ ರೈಡ್‌ ಮಾಡುತ್ತದೆ.
02:08 ನಾವು getDetails() ವಿಧಾನವನ್ನು ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ಅಬ್ಜೆಕ್ಟ್‌, ಅಂದರೆ ಮ್ಯಾನೇಜರ್‌ ನಿಂದ ಕರೆಯುತ್ತೇವೆ.
02:16 ವಿವರಗಳನ್ನು ಪ್ರಿಂಟ್ ಮಾಡಲು (ಮುದ್ರಿಸಲು), ಹೀಗೆ ಟೈಪ್‌ ಮಾಡಿ:

system.out.println Details of Manager Class.

02:28 ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಸೇವ್‌ ಮತ್ತು ರನ್‌ ಮಾಡಿ. ಹೀಗೆ ನಾವು ಔಟ್ಪುಟ್‌ ನಲ್ಲಿ ಡಿಪಾರ್ಟ್‌ ಮೆಂಟ್‌ ವೇರಿಯೇಬಲ್‌ ವ್ಯಾಲ್ಯೂ ನೋಡಬಹುದು.
02:37 ಹೀಗಾಗಿ ರನ್‌ ಟೈಂನಲ್ಲಿ ಸಬ್‌ ಕ್ಲಾಸ್‌ ವಿಧಾನವನ್ನು ಇನ್ವೋಕ್ (ಜಾರಿ) ಮಾಡುತ್ತದೆ.
02:42 ವಿಧಾನದ ಇನ್ವೊಕೇಶನ್‌ ಅನ್ನು ಜೆ.ವಿ.ಎಂ ನಿಂದ ನಿರ್ಣಯಿಸಲಾಗುತ್ತದೆಯೇ ಹೊರತು, ಕಂಪೈಲರ್‌ ನಿಂದ ಅಲ್ಲ.
02:48 ಹೀಗಾಗಿ ಇದನ್ನು ರನ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಅಥವಾ ಮೆಥಡ್ ಓವರ್‌ ರೈಡಿಂಗ್‌ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
02:55 ರನ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಎಂದರೆ ಏನು ಎಂಬುದನ್ನು ನಾವು ಕಲಿತಿದ್ದೇವೆ.
02:58 ನಾವೀಗ ವರ್ಚುವಲ್‌ ಮೆಥಡ್‌ ಇನ್ವೊಕೇಶನ್‌ ಕಲಿಯಲಿದ್ದೇವೆ.
03:03 ಎಕ್ಲಿಪ್ಸ್‌ ಐ.ಡಿ.ಇ ಯಲ್ಲಿ ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌‌ಗೆ ಬನ್ನಿ.
03:07 ವೇರಿಯೇಬಲ್‌ ನೇಮ್‌ ಗಾಗಿ static ಮತ್ತು final ಕೀವರ್ಡ್‌ ಗಳನ್ನು ತೆಗೆಯಿರಿ.
03:13 setName ವಿಧಾನವನ್ನು ಅನ್‌ ಕಮೆಂಟ್‌ ಮಾಡಿ.
03:16 ಸ್ಟಾಟಿಕ್‌ ಬ್ಲಾಕ್‌ ತೆಗೆಯಿರಿ. ಫೈಲ್‌ ಅನ್ನು ಸೇವ್‌ ಮಾಡಿ.
03:21 TestEmployee ಕ್ಲಾಸ್‌ ಗೆ ಬನ್ನಿ. manager.setName(“Nikkita Dinesh”); ವ್ಯಾಲ್ಯೂ ಇನ್ಸ್ಟೆನ್ಸ್‌ ಅನ್ನು ಅನ್‌ ಕಮೆಂಟ್‌ ಮಾಡಿ.
03:31 ನಾವು ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನಲ್ಲಿ setName() ವಿಧಾನವನ್ನು ಅನ್‌ ಕಮೆಂಟ್‌ ಮಾಡಿರುವುದನ್ನು ಈ ಇನ್ಸ್ಟನ್ಸ್‌ ಅನ್ನು ನಾವು ಅನ್‌ ಕಮೆಂಟ್‌ ಮಾಡಿದ್ದೇವೆ.
03:38 ನಾವೀಗ ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ರೆಫರನ್ಸ್‌ ಗೆ ಎಂಪ್ಲೋಯೀ ಅಬ್ಜೆಕ್ಟ್‌ emp1 ಅನ್ನು ಇನ್ಸ್ಟಾಂಶಿಯೇಟ್ (ದೃಷ್ಟಾಂತೀಕರಣ) ಮಾಡೋಣ.


03:46 Employee emp1 = new Employee open and close parenthesis semicolon ಎಂದು ಟೈಪ್‌ ಮಾಡಿ.
03:57 ನಾವೀಗ ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಗಾಗಿ setEmail ಮತ್ತು setName ಗಾಗಿ ಮೌಲ್ಯವನ್ನು ಇನಿಶಿಯಲೈಸ್ (ಅನುಸ್ಥಾಪನೆ) ಮಾಡೋಣ ಮಾಡೋಣ.
04:03 emp1.setName("Jayesh"); emp1.setEmail("pqr@gmail.com"); ಎಂದು ಟೈಪ್‌ ಮಾಡಿ.
04:16 ಉದ್ಯೋಗಿಯ ವಿವರಗಳನ್ನು ಪ್ರಿಂಟ್ ಮಾಡಲು System.out.println("Details of Employee class:" emp1.getDetails()) semicolon ಎಂದು ಟೈಪ್‌ ಮಾಡಿ.
04:37 ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ರೆಫರೆನ್ಸ್‌ ಗಾಗಿ ಮ್ಯಾನೇಜರ್‌ ಅಬ್ಜೆಕ್ಟ್‌ emp2 ಗೆ ನಾವು ಇನ್ಸ್ಟಾಂಶಿಯೇಟ್ ಮಾಡೋಣ.

ಅಂದರೆ Employee emp2 = new Manager open and close parenthesis semicolon ಎಂದು ಟೈಪ್‌ ಮಾಡಿ.

04:54 ನಾವಿದನ್ನು ಮಾಡಲು ಸಾಧ್ಯ, ಏಕೆಂದರೆ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು IS-A ಪರೀಕ್ಷೆಯನ್ನು ತೇರ್ಗಡೆ ಹೊಂಡುವ ಯಾವುದೇ ಜಾವಾ ಅಬ್ಜೆಕ್ಟ್‌, ಪಾಲಿಮಾರ್ಫಿಕ್‌ ಆಗಿರುತ್ತದೆ.
05:04 ಜಾವಾದಲ್ಲಿ ಎಲ್ಲಾ ಅಬ್ಜೆಕ್ಟ್‌ ಗಳು ಪಾಲಿಮಾರ್ಫಿಕ್‌ ಆಗಿರುತ್ತವೆ, ಏಕೆಂದರೆ ಯಾವುದೇ ಅಬ್ಜೆಕ್ಟ್‌ ಇಲ್ಲಿ ತನ್ನ ಸ್ವಂತ ಪ್ರಕಾರ ಮತ್ತು ಕ್ಲಾಸ್‌ ಅಬ್ಜೆಕ್ಟ್‌ ಗೆ IS-A ಪರೀಕ್ಷೆಯನ್ನು ತೇರ್ಗಡೆ ಹೊಂದುತ್ತದೆ.
05:16 ಮ್ಯಾನೇಜರ್‌ ಒಬ್ಬರು IS-A ಎಂಪ್ಲೋಯೀ.

ಮ್ಯಾನೇಜರ್‌ ಒಬ್ಬರು IS-A ಮ್ಯಾನೇಜರ್. ಮ್ಯಾನೇಜರ್‌ ಒಬ್ಬರು IS-A ಅಬ್ಜೆಕ್ಟ್.

05:23 ಯಾವುದೇ ಅಬ್ಜೆಕ್ಟ್‌ ಅನ್ನು ಆಕ್ಸೆಸ್‌ ಮಾಡಲು ರೆಫರನ್ಸ್‌ ವೇರಿಯಬಲ್‌ ಸಂಭವನೀಯ ದಾರಿಯಾಗಿದೆ.
05:29 ರೆಫರನ್ಸ್‌ ವೇರಿಯಬಲ್‌ ಗಳು emp1, emp2 ಮತ್ತು manager ತರ ಇವೆ.
05:36 ಇಲ್ಲಿ ನಾವು ಎರಡು ಮ್ಯಾನೇಜರ್‌ ಅಬ್ಜೆಕ್ಟ್‌ ಗಳನ್ನು ಇನ್ಸ್ಟಾಂಶಿಯೇಟ್ ಮಾಡುತ್ತೇವೆ:

ಒಂದು ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಅನ್ನು ರೆಫರನ್ಸ್‌ ಮಾಡುತ್ತದೆ. ಇನ್ನೊಂದು ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ಅನ್ನು ರೆಫರನ್ಸ್‌ ಮಾಡುತ್ತದೆ.

05:47 ನಾವೀಗ emp2 ಅಬ್ಜೆಕ್ಟ್‌ ಬಳಸಿ setEmail, setName ಮತ್ತು setDepartment ನ ಮೌಲ್ಯಗಳ ಇನಿಶಿಯಲೈಸ್ ಮಾಡೋಣ.
05:55 ಹೀಗೆ ಟೈಪ್‌ ಮಾಡಿ:

emp2.setName("Ankita"); emp2.setEmail(“xyz@gmail.com”); emp2.setDepartment(“IT”);

06:14 ನಾವು ಇಲ್ಲೊಂದು ದೋಷವನ್ನು ನೋಡಬಹುದು, `` setDepartment (ಸ್ಟ್ರಿಂಗ್) ವಿಧಾನವನ್ನು ಎಂಪ್ಲೋಯೀ ಪ್ರಕಾರಕ್ಕೆ ನಿರೂಪಿಸಿಲ್ಲ.ʼʼ
06:23 ಇದು ಏಕೆಂದರೆ setDepartment ವಿಧಾನವು ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಗೆ ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲ.
06:30 ಹೀಗಾಗಿ ಈ ಕೆಳಗಿನ ಸಾಲನ್ನು ತೆಗೆಯಿರಿ:

emp2.setDepartment("IT");

06:37 ವಿವರಗಳನ್ನು ಪ್ರಿಂಟ್ ಮಾಡುವುದಕ್ಕಾಗಿ ಹೀಗೆ ಟೈಪ್‌ ಮಾಡಿ:

System.out.println("Details of Manager class:" emp2.getDetails()) semicolon

06:55 ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಸೇವ್‌ ಮತ್ತು ರನ್‌ ಮಾಡಿ.
06:58 ಇಲ್ಲಿ Manager of: ನಮಗೆ ಖಾಲಿಯಾಗಿ ಸಿಗುತ್ತದೆ.
07:04 ಇದು ಏಕೆಂದರೆ ನಾವು emp2 ಬಳಸಿ ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ನಲ್ಲಿ ಡಿಪಾರ್ಟ್‌ ಮೆಂಟ್‌ ನ ಇನಿಶಿಯಲೈಸ್ ಮಾಡಿಲ್ಲ.
07:12 ಪ್ರಾತ್ಯಕ್ಷಿಕೆ ಉದ್ದೇಶಕ್ಕಾಗಿ ಡಿಫಾಲ್ಟ್ ಡಿಪಾರ್ಟ್‌ ಮೆಂಟ್‌ IT ಎಂಬುದಾಗಿ ಇರಲಿ.
07:17 ಹೀಗೆ ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ಗೆ ಹೋಗಿ ಮತ್ತು ಡಿಪಾರ್ಟ್‌ ಮೆಂಟ್‌ ಗೆ ಮೌಲ್ಯವನ್ನು ಇನಿಶಿಯಲೈಸ್ ಮಾಡಿಲ್ಲ.
07:25 ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಸೇವ್‌ ಮತ್ತು ರನ್‌ ಮಾಡಿ.
07:28 ನಾವು ಔಟ್ಪುಟ್‌ ಪಡೆಯುತ್ತೇವೆ: ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಅನ್ನು ಉಲ್ಲೇಖಿಸುವ ಎಂಪ್ಲೋಯೀ ಅಬ್ಜೆಕ್ಟ್,
07:34 ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಅನ್ನು ಉಲ್ಲೇಖಿಸುವ ಮ್ಯಾನೇಜರ್‌ ಅಬ್ಜೆಕ್ಟ್‌ ಮತ್ತು ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ಅನ್ನು ಉಲ್ಲೇಖಿಸುವ ಮ್ಯಾನೇಜರ್‌ ಅಬ್ಜೆಕ್ಟ್.
07:42 ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ನ getDetails() ವಿಧಾನವನ್ನು emp2 ಎಂಬುದಾಗಿ ನಾವಿಲ್ಲಿ ಕರೆಯುತ್ತೇವೆ.
07:49 ಆದರೆ emp2ಯು setDepartment ಕರೆಯಲು ಯತ್ನಿಸಿದಾಗ, ದೋಷ ಕಂಡುಬಂತು.
07:54 ಈ ಕೆಳಗಿನ ಕಾರಣದಿಂದಾಗಿ ಇದು ಉಂಟಾಗಿದೆ:

emp2.getDetails() ವೇಳೆ ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನಲ್ಲಿ ಕಂಪೈಲರ್‌, getDetails() ವಿಧಾನವನ್ನು ನೋಡುತ್ತದೆ.

08:05 ಹೀಗಾಗಿ ಇದು ದೋಷವನ್ನುಂಟು ಮಾಡುವುದಿಲ್ಲ, ಬದಲಾಗಿ ಕೋಡ್‌ ಅನ್ನು ಊರ್ಜಿತಗೊಳಿಸುತ್ತದೆ.
08:10 ಆದರೆ ರನ್‌ ಟೈಂನಲ್ಲಿ ಜೆ.ವಿ.ಎಂ, ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ನಲ್ಲಿ getDetails() ಅನ್ನು ಇನ್ವೋಕ್ ಮಾಡುತ್ತದೆ. ಏಕೆಂದರೆ ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ನ getDetails() ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನ getDetails() ಅನ್ನು ಅತಿಕ್ರಮಿಸುತ್ತದೆ.
08:24 ಹೀಗಾಗಿ ನಾವು ಮ್ಯಾನೇಜರ್‌ ಕ್ಲಾಸ್‌ ನ getDetails() ಪ್ರಕಾರ ಔಟ್ಪುಟ್‌ ಪಡೆಯುತ್ತೇವೆ. ಆದರೆ ಕಂಪೈಲರ್‌, ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನ setDepartment ವಿಧಾನವನ್ನು ನೋಡುವುದಿಲ್ಲ.
08:36 ಹೀಗಾಗಿ, setDepartment ಅನ್ನು emp2 ಎಂದು ಕರೆದಾಗ ಇದು ದೋಷವನ್ನು ತೋರಿಸುತ್ತದೆ.
08:43 ಇಲ್ಲಿ ಎಂಪ್ಲೋಯೀ ವಿಧಾನ getDetails() ಅನ್ನು ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಗೆ ಇನ್ವೋಕ್ ಮಾಡಲಾಗುತ್ತದೆ.
08:49 emp1.getDetails() ವೇಳೆ getDetails() ಗಾಗಿ ಕಂಪೈಲರ್‌, ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ಅನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತದೆ.
08:57 ರನ್‌ ಟೈಂ ವೇಳೆ ಜೆ.ವಿ.ಎಂ, ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನಲ್ಲಿ getDetails() ಅನ್ನು ಆಮಂತ್ರಿಸುತ್ತದೆ. ಹೀಗೆ, ನಾವು ಔಟ್ಪುಟ್‌ ಅನ್ನು ಎಂಪ್ಲೋಯೀ ಕ್ಲಾಸ್‌ ನ getDetails() ಪ್ರಕಾರ ಪಡೆಯುತ್ತೇವೆ.
09:08 ಹೀಗಾಗಿ, ಪ್ರತಿ ವೇರಿಯೇಬಲ್‌ ನಲ್ಲಿ ಉಲ್ಲೇಖಿಸಿರುವ ಅಬ್ಜೆಕ್ಟ್‌‌ಗೆ ಸರಿಯಾದ ವಿಧಾನವನ್ನು ಜೆ.ವಿ.ಎಂ ಬಯಸುತ್ತದೆ.
09:16 ಈ ವರ್ತನೆಯನ್ನು ವರ್ಚುವಲ್‌ ಮೆಥಡ್‌ ಇನ್ವೊಕೇಶನ್‌ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
09:21 ಈ ವಿಧಾನಗಳನ್ನು ವರ್ಚುವಲ್‌ ಮೆಥಡ್ಸ್‌ ಎಂದು ಹೇಳಲಾಗುತ್ತದೆ.
09:26 ಜಾವಾದ ಎಲ್ಲಾ ವಿಧಾನಗಳು ಇದೇ ರೀತಿಯಲ್ಲಿ ವರ್ತಿಸುತ್ತವೆ.
09:31 ವರ್ಚುವಲ್‌ ಮೆಥಡ್‌ ಇನ್ವೊಕೇಶನ್‌ ಏನೆಂಬುದನ್ನು ನಾವು ಯಶಸ್ವಿಯಾಗಿ ಕಲಿತೆವು.
09:36 ನಾವು ಕಂಪೈಲ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ, ಅಂದರೆ ಮೆಥಡ್‌ ಓವರ್‌ ಲೋಡಿಂಗ್‌ ಅಂದರೆ ಏನು ಎಂಬುದನ್ನು ಈಗಾಗಲೇ ಕಲಿತಿದ್ದೇವೆ.
09:42 ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಈಗ ಕಂಪೈಲ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಕುರಿತು ಕಲಿಯೋಣ.
09:47 ಕಂಪೈಲ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ನಲ್ಲಿ ಕ್ಲಾಸ್‌ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಮೆಥಡ್‌ ಹೊಂದಿರಬಹುದು.
09:53 ಈ ವಿಧಾನಗಳು ಒಂದೇ ಹೆಸರನ್ನು ಹೊಂದಿರಬಹುದು, ಆದರೆ ಬೇರೆ ಬೇರೆ ಆರ್ಗ್ಯುಮೆಂಟ್‌ ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹೊಂದಿರಬಹುದು.
09:59 ಕಂಪೈಲರ್‌, ಕಂಪೈಲ್‌ ಟೈಂನಲ್ಲಿ ಮೆಥಡ್‌ ಕಾಲ್‌ ಅನ್ನು ಗುರುತಿಸಬಹುದು. ಈ ಕಾರಣಕ್ಕಾಗಿ ಇದನ್ನು ಕಂಪೈಲ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
10:09 ನಾವೀಗ ಇದನ್ನು ಸಂಕ್ಷಿಪ್ತಗೊಳಿಸೋಣ.
10:11 ಈ ಟ್ಯುಟೋರಿಯಲ್‌ ನಲ್ಲಿ ನಾವು: ಪಾಲಿಮಾರ್ಫಿಸಂ ಎಂದರೇನು?

ರನ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ವರ್ಚುವಲ್‌ ಮೆಥಡ್‌ ಇನ್ವೊಕೇಶನ್‌ ಮತ್ತು ಕಂಪೈಲ್‌ ಟೈಂ ಪಾಲಿಮಾರ್ಫಿಸಂ ಕುರಿತು ಕಲಿತೆವು.

10:23 ಇಲ್ಲೊಂದು ಅಸೈನ್‌ ಮೆಂಟ್‌ ಇದೆ,

ಈ ಹಿಂದಿನ ಟ್ಯುಟೋರಿಯಲ್‌ ನಲ್ಲಿ ನಾವು ಬಳಸಿದ ವೆಹಿಕಲ್‌ ಮತು ಬೈಕ್‌ ಕ್ಲಾಸ್‌‌ಗ ವಿಧಾನಗಳನ್ನು ಓವರ್‌ ರೈಡ್‌ ಮಾಡಿ.

10:32 ಈ ಕೆಳಗಿನ ಲಿಂಕ್‌ ನಲ್ಲಿ ಲಭ್ಯವಿರುವ ಲಿಂಕ್‌ ಸ್ಪೋಕನ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ಪ್ರಾಜೆಕ್ಟ್‌ ಅನ್ನು ಸಂಕ್ಷಿಪ್ತಗೊಳಿಸುತ್ತದೆ. ದಯವಿಟ್ಟು ವೀಕ್ಷಿಸಿ.
10:40 ಸ್ಪೋಕನ್‌ ಟ್ಯುಟೋರಿಯಲ್‌ ಪ್ರಾಜೆಕ್ಟ್‌ ತಂಡವು ಕಾರ್ಯಾಗಾರವನ್ನು ನಡೆಸುತ್ತದೆ ಮತ್ತು ಆನ್‌ ಲೈನ್‌ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಉತ್ತೀರ್ಣರಾದವರಿಗೆ ಪ್ರಮಾಣಪತ್ರವನ್ನು ನೀಡುತ್ತದೆ. ಹೆಚ್ಚಿನ ಮಾಹಿತಿಗಾಗಿ ನಮಗೆ ಪತ್ರ ಬರೆಯಿರಿ.
10:51 ‘ಸ್ಪೋಕನ್ ಟ್ಯುಟೋರಿಯಲ್’ ಪ್ರೊಜೆಕ್ಟ್, NMEICT, MHRD, ಭಾರತ ಸರ್ಕಾರದ ನೆರವು ಪಡೆದಿದೆ. ಕೆಳಗಿನ ಲಿಂಕ್ ನಲ್ಲಿ ಈ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಲಭ್ಯವಿದೆ.
11:03 ಈ ಸ್ಕ್ರಿಪ್ಟ್ ನ ಅನುವಾದಕರು ಮಂಗಳೂರಿನಿಂದ ಮೆಲ್ವಿನ್ ಮತ್ತು ಧ್ವನಿ ಶ್ರೀ ನವೀನ್ ಭಟ್, ಉಪ್ಪಿನಪಟ್ಟಣ.

ಧನ್ಯವಾದಗಳು.

Contributors and Content Editors

Sandhya.np14