RiapaMeTpbi anrmeTa


public int getX(){ System.out.println(" in sinf A"); qaytish


Download 399.85 Kb.
bet33/97
Sana24.12.2022
Hajmi399.85 Kb.
#1060199
1   ...   29   30   31   32   33   34   35   36   ...   97
Bog'liq
Java (Laboratoriya)

public int getX(){
System.out.println(" in sinf A"); qaytish x;
}
B sinfi A {
int x=3, y=4; umumiy B() {
System.out.println ("B sinf B x=" + x + " y=" + y);
}
public int getX(){
System.out.println( " Sinfda B"); qaytish x;
}
}
umumiy sinf DemoAB {
umumiy statik bekor asosiy (String [] args) {
A objA = yangi B();
B objB = yangi B(); System.out.println(objA.x); System.out.println(objB.x);
}
}
Ushbu kodning bajarilishi natijasida u ketma-ket ko'rsatiladi: B sinfida
A sinfida getX () ni chaqirgandan keyin B sinfida x =1 y =0 B sinfida x =3 y =4
A sinfida getX () dan keyin x =1 y =0 ni chaqiring
B sinfida x =3 y =4
x =1
x =3
objA ob'ektini yaratishda B sinf ob'ekti tomonidan A sinfiga havolani ishga tushirish x maydoniga kirish mumkin edi sinf A. Ikkinchi holda, objB ob'ektini yaratishda B sinfi B sinfining x maydoniga kirdi . Biroq, shaklning turini o'zgartirishdan foydalanish: ( ( B ) objA ). x yoki (( A ) objB ). x bo'lsa, mos keladigan ­sinfdan x maydoniga osongina kirishingiz mumkin .
Usul polimorfizmining aspektlaridan biri A sinf konstruktori tomonidan quyidagi shaklda tasvirlangan:
ommaviy A () {
y = getX (); }
getX () usuli A sinfidagi kabi mavjud , shuningdek, B sinfida. B sinfidagi ob'ektni quyidagi usullardan biri bilan yaratishda:
A objA = yangi B(); B objB = yangi B();
Ikkala holatda ham birinchi navbatda A sinf konstruktori chaqiriladi. Ammo B sinfidagi ob'ekt yaratilganligi sababli , keyin getX () usuli chaqiriladi, mos ravishda B sinfiga tegishli , bu o'z navbatida B sinfi uchun hali ishga tushirilmagan x maydonida ishlaydi . Natijada , x ning standart qiymatini oladi, ya'ni. nol.

Download 399.85 Kb.

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




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