public class Ucenik
{
//Navodimo atribute koje ce nasa klasa Ucenik da ima
String ime, prezime ;
char odeljenje ;
int razred ;
}
Напомена: Атрибутима описујемо одређену особину објекта ( име, презиме, разред, одељење ... ). Најчешће, различити објекти исте класе имају различите вредности атрибута. Често кажемо да вредности атрибута дефинишу стање објекта. При опису атрибута морамо навести тип коме тај атрибут припада (целобројни, реални, знаковни...) и име атрибута. При томе, наведени тип је претходно дефинисан (уграђен у систем или дефинисан од стране програмера). |
Пример 1. Направити класу која описује комлексне бројеве .
Решење:
Како правимо класу која описује реалне броје, морамо прво видети које ће атрибуте наша класа имати. Пошто знамо да комлексни бројеви имају свој имагинарни и реални део, наша класа ће имати два атрибута. Први ће бити атрибут који описује реални део комплксног број и он ће бити типа float истог типа ће бити атрибут који описује имагинарни део комплексног броја. |
Слика 4.68. Представљање комплексног броја |
public class KompleksniBroja
{
//Navodimo atribute koje ce nasa klasa KompleksniBroj da ima
float re ;
float im ;
}
//Pomocu podrazumevanog konstruktora pravimo kompleksan broj
KompleksniBroj a = new KompleksniBroj();
//Realnom delu dodeljujemo vrednost 5
a.re = 5;
//Imaginarnom delu dodeljujemo vrednost 3
a.im = 3;
Метод класе је именовани блок наредби који се састоји из заглавља и тела
метода. У заглављу наводимо повратни тип ( ако метод не производи вредност
коју враћа, наводимо резервисану реч void ), затим име метода за којим следи
у малим заградама списак параметара метода. За сваки параметар наводи
се тип коме тај параметар припада као и име параметра. После заглавља у
витичастим заградама наводимо тело метода које се састоји из одговарајућих
наредби програмског језика C#.Наш метод би имао следећу синтаксу:povratni tip ime_metode ( lista parametara koje metoda koristi ) { telo metode } |
//Navodimo tip metode i parametre koje metoda koristi
String ispisiIme( String ime, String prezime, int razred )
{
//Povratna vrednost nase metode je string i njome ispisujemo zelenu recenicu
return " Ucenik " + ime + " " + prezime + "je " + razred + .razred .
}
imeObjekta.imeMetoda( lista vrednosti parametara ) |
Пример 2. Направити метод који сабира два комплексна броја.
|
*У случају да се анимација не приказује, притиснути дугме Прикажи слику
Решење:
Прво морамо одредити којег је типа наша метода. Како правимо методу која сабира два комплексна броја, онда знамо да као резултат добијамо
комплексан број па је тип наше методе KompleksniBroj. Следеће што треба да одредимо јесу параметри које наша метода прима.Па како сабирамо два
комплексна броја, следи да наша метода прима два параметра типа KompleksniBroj .
KompleksniBroj Saberi(KompleksniBroj a, KompleksniBroj b)
{
//Sada treba da odredimo kako sabiramo dva kompleksna broja. Pa sabiramo ih tako sto
//realan deo prvog broja saberemo sa realnim delom drugog i imaginarni deo prvog broja
//saberemo sa imaginarnim delom drugog
//Prvo kreiramo novi kompleksan broj c pomocu podrazumevanog konstruktora
KompleksniBroj c = new KompleksniBroj();
c.re = a.re + b.re ;
c.im = a.im + b.im ;
return c;
}
double povrsina = Math.Pow(p,2)*Math.PI;
Дакле, израчунали смо површину круга користећи методу Pow, чији је први аргумент баш полупречник, тј. оно што се степенује, а други, број на који се степенује полупречник.
Константа PI се такође налази дефинисана у класи Math и можемо је слободно користити позивањем Math.PI.
double hipotenuza = Math.Sqrt(a*a+b*b);
У овом задатку могли смо користити и већ од малопре познату методу Pow.
double hipotenuza = Math.Sqrt(Math.Pow(a,2)+Math.Pow(b,2));
double apsolutna_vrednost = Math.Abs(-3);
Метод Round заокружује број на најближи цео број. На пример, следећи код се користи да заокружимо број 5,49999 на најближи цео број. Резултат ће бити 5.
double ceo_broj = Math.Round(-3);
Ако користимо Round да заокружимо број који је тачно на пола између два броја, као што је 5.5, Round увек враћа паран број најблизи броју. Дакле, Math.Round(5.5) ће вратити 6, али Math.Round(8.5) ће вратити 8.
//Maksimum ce biti 5
int maksimum = Math.Max(5,2);
//Minimum ce biti 2.3
float minimum = Math.Min(7.6,2.3);
Пример 3. Направити класу круг и методе које рачунају обим и површину круга.
Решење :
//Definisemo klasu krug
public class Krug
{
double r;
//Metoda koja racuna povrsinu kruga
public double Povrsina(double r)
{
return r * r * Math.PI;
}
//Metoda koja racuna obim kruga
public double Obim( double r)
{
return 2 * r * Math.PI;
}
}
private void button1_Click( object sender, EventArgs e)
{
double r = double.Parse(textBox1.Text);
//Kreiramo primerak klase
Krug k = new Krug();
//Pozivamo metodu Obim
double obim = k.Obim(r);
label2.Text = "Obim kruga je: " +obim;
}
private void button2_Click(object sender, EventArgs e)
{
double r = double.Parse(textBox1.Text);
Krug k1 = new Krug();
label3.Text = "Povrsina kruga je :" + k1.Povrsina(r);
}