Professional Documents
Culture Documents
Tehniki Na Vizuelno Programiranje - Getter and Setter - Final
Tehniki Na Vizuelno Programiranje - Getter and Setter - Final
ВОЕНА АКАДЕМИЈА
- придружна членка-
Ментор: Изрботил:
д-р Југослав Ачкоски Пит.Исидора Алексовска
ред. Проф .потполковник бр. На индект 1475
1
Што претставува Getter и setter методите
1
Превод од Head First Java страна 79.
2
Setter (mutator) методи:
Преку Getter методите, објектите можат да ги изложат своите приватни атрибути на начин
што е безбеден и контролиран, што ги прави достапни за пристап од страна на други класи
или делови од апликацијата. Ова го овозможува почитувањето на принципите на
енкапсулација и сигурноста на податоците, бидејќи надворешниот свет не може директно
да пристапи до приватните атрибути на објектите. Слично, Setter методите обезбедуваат
контрола врз промената на вредностите на приватните атрибути обезбедувајќи можност за
валидација и обработка на влезните податоци. За да резимираме, треба да се овозможи
одбраната за потребата на setter методи за секој getter. Класите треба да бидат
непроменливи освен ако нема многу добри причини да се направат променливи.
3
Непроменливите класи обезбедуваат многу предности, а единствената недостаток е
потенцијалот за проблеми со перформанси во одредени околности.2
Слика 1
2
Превод од Effective Java by Joshua Bloch стр.312
4
Слика 2
Слика 3
Слика 4
5
2 if (number < 1 || number > 10) {
3 System.out.println("Invalid number!");
4 }
5 this.number = number;
6}
3
Превод од Chapter 4 Classes and Methods стр.26
6
Пример на програми кои содржат setter и getter методи :
Пример 1.
Пример.2
7
1 public class Person {
2 private String name;
3 public String getName() {
4 return name;
5 }
6
7 public void setName(String name) {
8 this.name = name;
9 }
10
11 public static void main(String[] args) {
12 Person person = new Person();
13 person.setName("Maja");
14 System.out.println("Person name: " + person.getName());
15 }
16 }
Објаснување:
Во класата Person имам приватен атрибут name, кој се чува како стринг. Овој атрибут е
приватен што значи дека не може да биде директно пристапен од други класи. Затоа за
пристап и модификација на овој атрибут мора да се користат getter и setter методи.
За атрибутот name има генерирани getter и setter методи (getName() и setName()). Getter
методот (getName()) овозможуваат да се добие вредноста на name. Setter методот
(setName()) ни овозможува поставување на новата вредност на name. Во main методот, се
креира нов објект од класата Person со помош на new Person(). Потоа се користат setter
методот (setName("Maja")) за да се постават вредност на name атрибутот на објектот на
"Maja". На крај со користење на getter методот (getName()) се добива вредноста на name
атрибутот и се печати.
8
Употреба на Setter методот: Во овој пример, користењето на setter методот овозможува да
поставување на вредноста на name атрибутот на објектот на "Maja".
Пример 2.
Одговор:
На празните места треба да стои private, name, new Person.На крајот на програмат ке
се испечати John.
Пример.3
9
Да се напише програма која ќе овозможи внесување на информации за лица, вклучувајќи
го нивното име и адреса (улицата, градот и поштенскиот код). Програмата нека вклучува
две класи: Person и Address. Класата Person нека има атрибут за име и атрибут за адреса,
која е објект од класата Address. Класата Address има атрибути за улица, град и поштенски
код. Одговор
1
public class Person {
2 private String name;
3 private Address address;
4
5 public String getName() {
6 return name;
7 }
8
9 public void setName(String name) {
this.name = name;
10
}
11
12 public Address getAddress() {
13 return address;
14 }
15
16 public void setAddress(Address address) {
17 this.address = address;
18 }
19
10
20
21 public static void main(String[] args) {
22 // Креирање на објект од класата Person
23 Person person = new Person();
24 // Поставување на име
25 person.setName("John");
26
27 // Креирање на објект од класата Address
28 Address address = new Address();
// Поставување на податоци за адресата
29
address.setCity("New York");
30 address.setStreet("123 Main Street");
31 address.setZipCode("10001");
32
33 // Поставување на адреса на лицето
34 person.setAddress(address);
35 System.out.println("Person name: " + person.getName());
36 System.out.println("Person address: " +
37 person.getAddress().getStreet() + ", " + person.getAddress().getCity() +
", " + person.getAddress().getZipCode());
38
} }
39
Објаснување
Класата Person претставува лице со име и адреса, каде што адресата е објект
од класата Address. Во класата Person има атрибути за името на лицето и
неговата адреса (name и address). За секој од овие атрибути, има соодветни getter
и setter методи за да може да se пристапи.
11
Заклучок
12
КОРИСТЕНА ЛИТЕРАТУРА
13