Metoda ndryshuese: Dallime mes rishikimesh

[pending revision][pending revision]
Content deleted Content added
Rreshti 7:
* Person.java
*/
public class Person {__L_CURLY__
private String emri;
Rreshti 15:
* Metoda qasëse për emër
*/
public String merrEmrin() {__L_CURLY__
return emri;
}__R_CURLY__
/**
* Metoda ndryshuese për emër
*/
public void ndryshoEmrin( String emriDhene ) {__L_CURLY__
emri = emriDhene;
}__R_CURLY__
/**
* Metoda qasëse për moshë
*/
public int merrMoshen() {__L_CURLY__
return mosha;
}__R_CURLY__
/**
* Metoda ndryshuese për moshë me vlerësim shtesë
*/
public void ndryshoMoshen( int moshaDhene ) {__L_CURLY__
if( moshaDhene <= 0 ) {__L_CURLY__
System.err.println( "Mosha nuk mund të jetë zero, ose të ketë vlerë negative!" );
} else {__L_CURLY__
mosha = moshaDhene;
}__R_CURLY__
}
}__R_CURLY__</source>
Efikasiteti i kapsulimit në klasën e sipërme mund të vërehet duke e shfrytëzuar klasën vijuese:
<source lang="java">
Rreshti 50:
* PersonTest.java
*/
public class PersonTest {__L_CURLY__
public static void main( String[] args ) {__L_CURLY__
Person person = new Person();
Rreshti 62:
person.ndryshoMoshen( -1 );
}__R_CURLY__
}</source>
Pra, metoda ndryshuese nuk do të lejoj vendosjen e vlerës zero ose asaj negative në variablën <code>mosha</code>. 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 <code>person.mosha = -1</code> që do t'ishte rezultat i padëshiruar.