Metoda ndryshuese
Në shkenca kompjuterike metoda ndryshuese paraqet metodën që shfrytëzohet për kontrollimin e ndryshimeve që bëhen ndaj një variable. Kjo metodë shfrytëzohet më së shumti në programimin e orientuar në objekte për shkaqe të përshtatjes ndaj konceptit të kapsulimit. Në bazë të këtij koncepti, variablat e një klase janë të definuara si private me ç'rast bëhen të fshehura nga kodi që gjendet jashtë klasës. Ndryshimi i vlerës të këtyre variablave mund të bëhet vetëm me anë të metodave publike të klasës (metodave ndryshuese) të cilat e marrin vlerën e dëshiruar si parametër, dhe po nëse është nevoja, e bëjnë vlerësimin shtesë për të parë se a është vlera e përshtatshme. Në anën tjetër metoda qasëse shfrytëzohet për leximin e vlerës nga variabla private[1].
Shembulli në Java
[Redakto | Redakto nëpërmjet kodit]Në shembullin vijues nga gjuha programuese Java, shihet klasa Person
për paraqitjen e një personi i cili ka variablat private për emër (private String emri
) dhe për moshë (private int mosha
):
/**
* Person.java
*/
public class Person {
private String emri;
private int mosha;
/**
* Metoda qasëse për emër
*/
public String merrEmrin() {
return emri;
}
/**
* Metoda ndryshuese për emër
*/
public void ndryshoEmrin( String emriDhene ) {
emri = emriDhene;
}
/**
* Metoda qasëse për moshë
*/
public int merrMoshen() {
return mosha;
}
/**
* Metoda ndryshuese për moshë me vlerësim shtesë
*/
public void ndryshoMoshen( int moshaDhene ) {
if( moshaDhene <= 0 ) {
System.err.println( "Mosha nuk mund të jetë zero, ose të ketë vlerë negative!" );
} else {
mosha = moshaDhene;
}
}
}
Efikasiteti i kapsulimit në klasën e sipërme mund të vërehet duke e shfrytëzuar klasën vijuese:
/**
* PersonTest.java
*/
public class PersonTest {
public static void main( String[] args ) {
Person person = new Person();
person.ndryshoEmrin( "Filan Fisteku" );
person.ndryshoMoshen( 30 );
System.out.println( "Emri: " + person.merrEmrin() );
System.out.println( "Mosha: " + person.merrMoshen() );
person.ndryshoMoshen( -1 );
}
}
Pra, metoda ndryshuese nuk do të lejoj vendosjen e vlerës zero ose asaj negative në variablën mosha
. Në mungesë të metodave qasëse dhe ndryshuese, dhe rrjedhimisht në mungesë të kapsulimit, programorët do ta kishin mundësinë që ta ndryshojnë moshën direkt me anë të rreshtit person.mosha = -1
që do t'ishte rezultat i padëshiruar.
Referimet
[Redakto | Redakto nëpërmjet kodit]- ^ Katherine Sierra; Bert Bates (2008-06-24). "Chapter 2: Object Orientation". SCJP Sun Certified Programmer for Java 6 Exam 310-065. McGraw-Hill Osborne Media. fq. 86–89. ISBN 0-0715-9106-0.
{{cite book}}
: Mungon ose është bosh parametri|language=
(Ndihmë!) - Transclusion error: {{En}} is only for use in File namespace. Use {{lang-en}} or {{in lang|en}} instead.