Учебно-методический комплекс по дисциплине " криптография 1 " Научная сфера: 300 000 Сфера технического производства



Download 0,94 Mb.
bet33/37
Sana28.03.2022
Hajmi0,94 Mb.
#514796
TuriУчебно-методический комплекс
1   ...   29   30   31   32   33   34   35   36   37
Bog'liq
УМК-Криптоанализ

Виды классов в Java
В Java есть 4 вида классов внутри другого класса:

  1. Вложенные внутренние классы – нестатические классы внутри внешнего класса.



  1. Вложенные статические классы – статические классы внутри внешнего класса.



  1. Локальные классы Java – классы внутри методов.



  1. Анонимные Java классы – классы, которые создаются на ходу.


Нестатические классы внутри внешнего класса
Все члены класса в языке Java - поля и методы - имеют модификаторы
доступа. В прошлых темах мы уже сталкивались с модификатором public. Модификаторы доступа позволяют задать допустимую область видимости для членов класса, то есть контекст, в котором можно употреблять данную переменную или метод.
В Java используются следующие модификаторы доступа:
public: публичный, общедоступный класс или член класса. Поля и методы, объявленные с модификатором public, видны другим классам из текущего пакета и из внешних пакетов.

private: закрытый класс или член класса, противоположность модификатору public. Закрытый класс или член класса доступен только из кода в том же классе.
protected: такой класс или член класса доступен из любого места в текущем классе или пакете или в производных классах, даже если они находятся в других пакетах
Модификатор по умолчанию. Отсутствие модификатора у поля или метода класса предполагает применение к нему модификатора по умолчанию. Такие поля или методы видны всем классам в текущем пакете.
Рассмотрим модификаторы доступа на примере следующей программы:
public class Program{
public static void main(String[] args) {
Person kate = new Person("Kate", 32, "Baker Street", "+12334567");



kate.displayName();

// норм, метод

public

kate.displayAge();

// норм, метод

имеет модификатор по умолчанию

kate.displayPhone();

// норм, метод

protected

//kate.displayAddress();

// ! Ошибка,

метод private

System.out.println(kate.name);

//

норм, модификатор по умолчанию

System.out.println(kate.address);

//

норм, модификатор public

System.out.println(kate.age);

//

норм, модификатор protected

//System.out.println(kate.phone);

//

! Ошибка, модификатор private

}










}










class Person{










String name;










protected int age;










public String address;










private String phone;










public Person(String name, int age, String address, String phone){ this.name = name;

this.age = age;


this.address = address;


this.phone = phone;


}

public void displayName(){ System.out.printf("Name: %s \n", name);


}


void displayAge(){

System.out.printf("Age: %d \n", age);


}


private void displayAddress(){ System.out.printf("Address: %s \n", address);

}


protected void displayPhone(){ System.out.printf("Phone: %s \n", phone);

}}
В данном случае оба класса расположены в одном пакете - пакете по умолчанию, поэтому в классе Program мы можем использовать все методы и переменные класса Person, которые имеют модификатор по умолчанию, public


и protected. А поля и методы с модификатором private в классе Program не будут доступны.
Если бы класс Program располагался бы в другом пакете, то ему были бы доступны только поля и методы с модификатором public.
Модификатор доступа должен предшествовать остальной части определения переменной или метода.
Задание

  1. Объясните разницу между public, protected, private классом или методами шаг за шагом с примерами.



  1. Разработайте логический проект, включающий protected, private классы.



Download 0,94 Mb.

Do'stlaringiz bilan baham:
1   ...   29   30   31   32   33   34   35   36   37




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish