Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr


Parametrlarni olish bilan ob’ektlarni yaratish



Download 5,36 Mb.
Pdf ko'rish
bet281/335
Sana02.08.2021
Hajmi5,36 Mb.
#136132
1   ...   277   278   279   280   281   282   283   284   ...   335
Bog'liq
Dasturlash asoslari(O'zbekcha)

Parametrlarni olish bilan ob’ektlarni yaratish 
Hozir  yuqorida  parametrsiz  klass  yaratishning  misoli  yendi  parametrlar  bilan  klassni 
yaratishning misolini ko‘ramiz 
Cat someCat = 
new
 Cat(
"Johnny"

"brown"
); 
                           
S#   sinfini turi bilan tanishish 
.NET  platformasiga  tegishli  bo‘lsa,  u  xolda  yanada  fundamental  dastur  konstruksiyasi 
sifatida  sinf  turi  xisoblanadi.  Formal  sinf  bu  foydalanuvchi  tomonidan  aniqlanadigan  tur.  U 
berilganlarni  maydonidan  va  holatidan  tashkil  topgan.  Berilganlar  maydonining  sinfini  barchasi 
birga  sinf  nusxalarini  “Holatini”  tasvirlaydi.  Ob’ektga  yo‘naltirilgan  dasturlash  tillari  S#  ga 
o‘xshash  berilganlarni  guruxlash  xususiyatidan  tashkil  topgan  va  shu  bilan  sinfni  aniqlashdagi 
funksionallik  bilan  bog‘liq,  bu  esa  real  xayot  asosida  dasturiy  ta’minotni  madellashtirish  imkonini 
beradi. 
Boshlanishida  yangi  S#  Console  Application  yaratamiz  uni  SimpleClassExample.  Next 
ataymiz.  Keyin  loyihaga  yangi  sinflar  faylini  (Project  →  Add  Class)  qo‘shamiz.  Keyin 
natijalanuvchi dialog oynasida Class belgisini tanlash zarur. Bu esa 5.1 rasmda ko‘rsatilgan va Add 
qo‘shish tugmasiga bosamiz. 
S# da sinfni aniqlash class yordamchi kalit so‘z yordamida amalga oshiriladi. Oddiy mavjud 
sinflarni e’lon qilish keyingi ko‘rinishda bo‘ladi. 
class
 
Car
 


Sinfni  turini  aniqlab  bo‘lgach  o‘zgaruvchan  xadlar  to‘plamini  aniqlash  lozim.  Bu 
aniqlanganlar uni xatoligini tasdiqlash uchun ishglatiladi. 
Masalan  siz    Car  ob’ektlari  int  turidagi  berilganlar  maydoniga  ega  bo‘lishi  kerak  deb 
yechishingiz  mumkin.  Ular  xozirgi  tezlikni  tasvirlaydi  va  string  tipidagi  berilganlar  maydoni 
do‘stona  avtomobil  ismini  tasvirlash  uchun  ishlatiladi.    Boshlang‘ich  proektiv  xolatini  xisobga 
olgan xolda Car sinfi keyingi ko‘rinishda bo‘ladi. 
class
 
Car
 

    
// The 'state' of the Car. 
 
    
public
 
string
 petName; 
    
public
 
int
 currSpeed; 



Dasturlash tillari va axborot-kommunikatsiya texnologiyalari                                                              1-semestr
 
 
286 
 
 
5.1 rasm. S# sinfiga yangi tipni qo‘shish. 
Bu  o‘zgaruvchan  xadlar  public  mavjudlik  modifikatorini  ishlatish  bilan  e’lon  qilingan. 
Ochiq (public) sinfni xadlari mavjuddir. Sizlarga ma’lum bo‘lishi kerakki “ob’ekt” termini berilgan 
sinf tipini nusxasini tasvirlash uchun xizmat qiladi, u new kalit so‘z yordamida yaratilgan. 
O‘zgaruvchan  xadlar  to‘plamini  aniqlagandan  so‘ng,  loyhalashtirishdagi  keyingi  qadam 
sifatida xadlarini yaratish xisoblanadi, ular uning xolatini  modellashtiradi. Bunga misol sifatida Car 
sinfi SpeedUp()  ismi  bo‘yicha  bitta  usulni  aniqlaydi va  yana  bittasi  ismi  bo‘yicha  PrintState()  sinf 
kodini keyingi ko‘rinishda modifikatsiyalaydi  
class
 
Car
 

    
// The 'state' of the Car. 
 
    
public
 
string
 petName; 
    
public
 
int
 currSpeed; 
 
    
// The functionality of the Car. 
 
    
public
 
void
 PrintState() 
    { 
        
Console
.WriteLine(
"{0} is going {1} MPH."
, petName, currSpeed); 
    } 
    
public
 
void
 SpeedUp(
int
 delta) 
    { 
        currSpeed += delta; 
    } 

PrintState() metodi bu qaysidir o‘rinda tashxisli funksiya, u oddiygina Car ob’ektini hozirgi 
xolatini  chiqaradi  va  u  guruxli  qatorga  chiqadi.  SpeedUp()  metodi  Carni  tezligini  oshiradi  uni 
kattalikka oshirgan xolda  endi  Main() metodidagi kodni yangilang u quyida ko‘rsatilgan: 
static
 
void
 Main(
string
[] args)  
{  
  Console.WriteLine(
"***** Fun with Class Types *****\n"
);  
  
// Allocate and configure a Car object. 
 
  Car myCar = 
new
 Car();  
  myCar.petName = 
"Henry"
;  


Dasturlash tillari va axborot-kommunikatsiya texnologiyalari                                                              1-semestr
 
 
287 
 
  myCar.currSpeed = 10;  
  
// Speed up the car a few times and print out the 
 
  
// new state. 
 
  
for
 (
int
 i = 0; i <= 10; i++)  
  {  
    myCar.SpeedUp(5);  
    myCar.PrintState();  
  }  
  Console.ReadLine();  
}  
Dasturni  ishga  tushirib,  siz  ko‘rishingiz  mumkin  Car  o‘zgaruvchi  (myCar) o‘zining  xozirgi 
xolatini butun xayoti davomida ushlab  qoladi, u keyingi xulosada ko‘rsatilgan. 
***** Fun with Class Types *****  
Henry 
is
 going 15 MPH.  
Henry 
is
 going 20 MPH.  
Henry 
is
 going 25 MPH.  
Henry 
is
 going 30 MPH.  
Henry 
is
 going 35 MPH.  
Henry 
is
 going 40 MPH.  
Henry 
is
 going 45 MPH.  
Henry 
is
 going 50 MPH.  
Henry 
is
 going 55 MPH.  
Henry 
is
 going 60 MPH.  
Henry 
is
 going 65 MPH.  
 

Download 5,36 Mb.

Do'stlaringiz bilan baham:
1   ...   277   278   279   280   281   282   283   284   ...   335




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