Method Overriding සිංහලෙන්
Method Overriding
Super class එකකින් Sub class එකකට එන method එකක body එක change කිරීම method overriding වේ. තවද overriding වීමට නම් classes 2 Inherit වී තිබිය යුතුයි. උදාහරණයක් ලෙස monkey යනුවෙන් super class එකක් හා human යනුවෙන් sub class එකක් සලකමු.
class Monkey {
climb ( ){
}
eat ( ){
}
}
class Human extends Monkey{
climb ( ){
}
eat ( ){
}
}
මෙහිදී Monkey { } යටතේ climb ( ), eat ( ) යන methods ඇත. එම methods ම human යටතටද ගැලපේ. නමුත් ඒවායේ values, human ට ගැලපෙන ආකාරයට වෙනස් විය යුතුයි.ෙ එනම් Monkey { } යන class එක යටතේ ඇති දේවල් Inherit කිරීම මඟින් human { } යන class එකකට ලබා ගෙන values වෙනස් කල යුතුයි. එම ක්රියාව method overriding වේ.
class A {
void b ( ) {
System . out ( "A's b" ) ;
}
}
class C extends A {
void b ( ) {
System . out ( "C's b" ) ;
}
public static void main ( ) {
C . c = new C ( ) ;
c . b ( ) ;
}
}
මෙහිදී class A සහ class C යන දෙකේම ඇත්තේ void b ( ) { } යනුවෙන් එකම ආකරයේ method එකකි. එවැනි අවස්ථාවල default run වෙන්නෙ child ගේ method එකයි. එනම් මෙම code එකෙහි output එක වන්නෙ C's b යන්නයි. මේ සඳහා උදාහරණයක් පහත දැක්වෙ.
Method overriding සඳහා තවත් උදාහරණයක් පහත දැක්වේ.
by Janitha Pramudika Kandegedara
Comments
Post a Comment