Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМКД JP Инф_каз_2015.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
595.94 Кб
Скачать

Әдістерді хабарлау

Әдістер төмендегі форматта хабарланады:

тип әдіс_есімі ( формальды параметрлер тізімі) {

әдістің денесі:

}

Әдіс кез келген типті қайтара алады, егер нәтиже қайтармайтын болса void типі көрсетіледі. Формальды параметрлер тізімі – бұл үтір арқылы ажыратылған тип-идентификатор тізбегі. Егер параметр болмаса, бос дөңгелек жақшалар қойылады.

class Point { int х, у;

void init(int a, int b) {

х = а;

у = b;

}

}

Айнымалы өкілдерін жасыру

Java тілінде бір немесе біріктірілген облыстарда екі локалды аттас айнымалының көрінуі мүмкін емес. Бірақ айнымалы өкілдері аттас әдістердің формалді параметрлерін хабарлауға тиым салынбайды. this сілтемесі қолданылатын ағымдағы объект үшін inіt әдісінің жаңа түрін қарастырайық.

class Point { int х, у;

void init(int х, int у) {

this.x = х;

this.у = у

}

}

class TwoPointsInit {

public static void main(String args[]) {

Point p1 = new Point();

Point p2 = new Point();

p1.init(10,20);

p2.init(42,99);

System.out.println("x = " + p1.x + " у = •• + p-l.y);

System.out.printlnC'x = " + p2.x + " у = •• + p2.y);

}

}

Конструкторлар

Конструктор дегеніміз жаңа объектіні инициализациялау үшін қолданылатын әдіс. Конструктордың есімі кластың есімімен сәйкес келеді. Конструктордың қайтаратын типі болмайды. Алдыңғы мысалды конструктордың көмегімен жазайық.

class Point { int х, у;

Point(int х, int у) {

this.x = х;

this.у = у;

}

}

class PointCreate {

public static void main(String args[]) {

Point p = new Point(10,20);

System.out.println("x = " + p.x + " у = " + p.у);

}

}

This –ті конструкторларда қолданылуы

Мысалы:

class Point { int х, у;

Point(int х, int у) {

this.x = х;

this.у = у;

}

Point() {

this(-1, -1);

}

}

Бұл мысалда екінші конструктор объект инициализациясын аяқтау үшін бірінші конструкторға назар аударады.

Келесі мысалда Point класына 2 distance әдісі қосылған. distance функциясы екі нүкте арақашықтығын қайтарады. Жол қолданылған әдістердің біреуіне х және у нүктелерінің координаттары, ал екіншісіне Point параметр-объект түрінде информация беріледі.

class Point { int х, у;

Point(int х, int у) {

this.x = х;

this. y = y;

}

double distance(int х, int у) {

int dx = this.x - х;

int dy = this.у - у;

return Math.sqrt(dx*dx + dy*dy);

}

double distance(Point p) {

return distance(p.x, p.y);

}

}

class PointDist {

public static void main(String args[]) {

Point p1 = new Point(0, 0);

Point p2 = new Point(30, 40);

System.out.println("p1 = " + pi.x + ", " + p1.y);

System.out.println("p2 = " + p2.x + ", " + p2.y);

System.out.println("p1.distance(p2)= " + p1.distance(p2));

System.out.println("p1.distance(60,80)= " + p1.distance(60, 80));

}

}

Екінші форманың distance әдісінде нәтижені алу үшін бірінші форма шақырылады. Төменде бұл программаның нәтижесі көрсетілген.

р1 = 0, 0

р2 = 30, 40

р1.distance(p2) = 50.0

p1.distance(60, 80) = 100.0

Әдебиеттер

  1. Васильев А.Н. Java. Объектно-ориентированное программирование: Учеб. Пособ. – СПб.: Питер, 2011. – 400 с. [В]

  2. Казарин С.А., Клишин А.П. Среда разработки Java-приложений Eclipse: (ПО для объектно-ориентирован-ного программирования и разработки приложений на языке Java): Учеб. Пособ., Москва, 2008. – 77 с. [К]

  3. Монахов В.В. Язык программирования Java и среда NetBeans. – 3-е изд., перераб. И доп. – СПб.: БХВ-Петербург, 2011. – 704 с.