Klasi

Úr Wikipediu, frjálsa alfræðiritinu

Grein þessi skal sameinuð Klasi (forritun) 
Þessi grein þarfnast hreingerningar svo hún hæfi betur sem grein hér á Wikipedia. Skoðaðu sýnigreinina og nafnavenjurnar til að bæta hana.

Klasar eru til þess að skipta forriti niður í einingar og er eitt megineinkenni hlutbundinnar forritunar. Klasar brjóta niður forritin þannig að það sé auðveldara að vinna með þau, ákveðnir hlutir um ákveðið efni er alltaf á sínum stað og við vitum hvar skal leita af þeim. Ef við tökum bíl sem dæmi, þá gerum við klasa sem skilgreinir eigindi bílsins, sumsé nánari uppslýsingar, eins og að bíll hefur hurðir, dekk, lit og gerð. Eftir að við gerum klasann þá getum við gert eins mörg mismunandi tilvik af honum og við viljum. T.d. einn bíl með 4 hurðar, 15“ dekk, grænan og annan hins vegar með 5 hurðar, 17“ dekk og rauðan á lit. Meginreglan er að skipta forritinu niður í einingar sem eru hannaðar á þann veg að breyting í einum klasa hafi sem minnst áhrif á aðra hluti forritsins til þess að auðvelda okkur við að smíða stór kerfi. Það er hentugast að reyna að gera almennan klasa sem við getum endurnýtt þegar okkur vantar í önnu verkefni. Til þess að við þurfum ekki að skrifa klasa sem við eigum nú þegar til, og einnig að nýta klasa sem við erum þegar búin að prófa út í gegn og vitum að virkar mjög vel.

[breyta] Private, protected, og public

Klasar geta verið skilgreindir sem public, private or protected. Þessir valmöguleikar skilgreina aðgengið í klasan.

Private óheimila aðgang til klasans, aðeins föll sem eru í klasanum sjálfum fá aðgang.

Protected leyfir klasanum sjálfum og öllum undir klösum að fá aðgang

Public þýðir að allir fá aðgengi, hann er alveg opin fyrir öllum.


Abstract klasi abstract class gengur út á það að hægt sé að skilgreina uppbyggingu klasans, segja hvaða breytur og föll hann inniheldur án þess að útfæra vinnuna sjálfa. Þeir sem að erfa abstract klasa verða að útfæra þau föll sem að eru ekki útfærð í abstract hlutanum. Abstract klasi er ekki eiginlegur klasi hann getur ekki keyrt og er bara notaður fyrir aðra klasa til að samnýta eiginleika.

Hlutrænn klasi concrete class þá vita þeir klasar sem að erfa hann ekki hvernig hann útfærir concrete föllin. Það er svipað og abstract.

[breyta] Dæmi

using System;
public class Hello
{
    private string what;
    public Hello(string s)
    {
        what = s;
    }    
    public void Say()
    {
        Console.WriteLine("Hello " + what + "!");
    }
}
public class Program
{
    public static void Main(string[] args)
    {
        Hello helloWorld = new Hello("world");
        helloWorld.Say(); // prints "Hello world!" onto the console
    }
}

Hérna er eitt dæmi, klasi sem við köllum Hello er gerður með smið sem tekur inn streng. Þegar við köllum á Say() fallið þá mun tilvik af Hello prenta Hello{what} á skjáinn.

[breyta] Heimildir

--- http://en.wikipedia.org/wiki/Class_%28computer_science%29