You are on page 1of 4

Контрола на пристап до членовите на класата

Модификатори се специјални клучни зборови во јазикот кои ја модифицираат


дефиницијата (и однесувањето) на класата, методот или променливата.
Јава јазикот има голем број модификатори вклучувајќи модификатори за
контрола на пристап до класа, метод или променлива – public, protected или
private. Најважните модификатори во јазикот, од гледна точка на класа и
дизајн на објекти, се оние кои дозволуваат да се контролира прегледноста и
пристапот до атрибутите и методите внатре во класата.
Модификаторите за контрола на пристап одредуваат дали други класи може
да користат одредено поле или да повикаат одреден метод.
Класата може да биде декларирана со модификатор – public, па во тој случај
таа класа е видлива за сите останати класи. Доколку класата нема ваков
модификатор, видлива е само во рамки на пакетот каде се наоѓа таа.
За членовите на класите, исто така може да се користи public
модификаторот или да нема модификатор, исто како кај класите, со истото
значење. Исто така, за членовите може да се искористат модификатори за
пристап, како: private и protected. Private – значи дека до членот може
да биде пристапувано само од неговата класа. Protected – значи дека до
членот може да се пристапува само од класи во рамки на пакетот и од
подкласи на неговата класа од друг пакет.
За да се пристапи на атрибут на класата означен како приватен, со цел да се
доделат/земат вредности, неопходно е во класата во која е дефиниран
атрибутот, да се креираат гетери и сетери, соодветно.
ПРИМЕР:
Да се креира класа Student со приватни атрибути за ime, prezime и index. Во
класата да се дефинираат гетери и сетери за атрибутите. Во главната класа да
се креира објект, да му се доделат вредности и истите да се испечатат.
КЛАСА Student
package oop.fikt;

public class Student {


private String firstName;
private String lastName;
private int index;

//Гетер за атрибутот firstName


public String getFirstName() {
return firstName;
}
//Сетер за атрибутот firstName
public void setFirstName(String firstName) {
this.firstName = firstName;
}
//Гетер за атрибутот lastName
public String getLastName() {
return lastName;
}
//Сетер за атрибутот firstName
public void setLastName(String lastName) {
this.lastName = lastName;
}
//Гетер за атрибутот index
public int getIndex() {
return index;
}
//Сетер за атрибутот index
public void setIndex(int index) {
this.index = index;
}
}
КЛАСА - Test
package oop.fikt;

public class Test {

public static void main(String[] args) {


//Креирање објект
Student student1 = new Student();

//Доделување вредности на објектот, со примена на


сетери
student1.setFirstName("Stefan");
student1.setLastName("Stefanovski");
student1.setIndex(9999);

//Печатење на вредностите на објектот, со примена на


гетери
System.out.println(student1.getFirstName());
System.out.println(student1.getLastName());
System.out.println(student1.getIndex());

}
ЗАДАЧИ:
1. Да се креира класа Covek со три приватни атрибути за име, презиме и
матичен број. Во класата да се дефинира стандарден (default) конструктор, и
гетери и сетери за атрибутите. Во главната класа да се креира една инстанца
од класата Covek, да и се доделат вредности, и истите да се испечатат.
2. Да се креира класа Restoran со приватни атрибути за име на ресторанот,
локација, телефон, број на седишта. Во класата да се дефинираат гетери и
сетери за сите атрибути. Во главната класа да се креира една инстанца од
класата Restoran, да и се доделат врености и да се испечатат со коментар по
избор.
3. Да се креира класа Proizvod со приватни атрибути за име на производот,
цена, производител, тежина. Во класата да се дефинира конструктор кој ќе
доделува статични вредности на сите атрибути од класата, и гетери и сетери.
Во главната класа да се креира една инстанца од класата Proizvod и да се
испечатат вредностите на истата.
4. Да се креира класа Avtomobil со приватни атрибути за марка, модел,
поминати километри, боја. Во класата да се дефинира конструктор кој
динамично ќе доделува вредности на сите атрибути. Исто така, да има метод
кој на влез прима целобројна променлива pomnoziKm, и негова задача да
биде множење на поминатите километри со соодветната променлива која се
добива како влезен аргумент. Методот да ја враќа вредноста. Во главната
класа да се креира една инстанца од класата Avtomobil, да се повика методот
и да се испечатат вредностите на истата.

You might also like