c using statement c virtual method tutorial with examples
Ta poglobljena vadnica razlaga vse o C # z uporabo izjave in virtualne metode. Spoznali boste tudi razliko med abstraktnimi in virtualnimi metodami:
Blok Uporaba v glavnem pomaga pri upravljanju virov, sistemu pa omogoča upravljanje virov z določitvijo obsega predmeta in njegovih potreb po virih.
.Net Framework ponuja različne načine za upravljanje virov za predmete, ki uporabljajo zbiralnik smeti. To pomeni, da vam ni treba izrecno dodeliti in odstraniti pomnilniških predmetov. Čiščenje katerega koli neupravljanega predmeta bo izvedeno z uporabo destruktorja.
Za pomoč programerjem, da to dosežejo, stavek C # using zagotavlja pogoj za uničenje predmeta.
=> Tu si oglejte brezplačni vodnik za usposabljanje za C # .
Da bi dosegli samodejno uničenje predmeta, C # ponuja način odstranjevanja, ki ga lahko pokličete, ko objekt več ni potreben. Stavek using v C # definira pogojno mejo za obstoj predmeta. Ko zaporedje izvajanja zapusti mejo uporabe, bo ogrodje .Net vedelo, da je čas za uničenje tega predmeta.
Kaj se boste naučili:
kako odpreti datoteke .jar windows 10
C # Uporaba izjave
Za uporabo uporabite vmesnik za enkratno uporabo
Stavek C # Uporaba programerjem omogoča, da v enem stavku izvedejo več virov. Vsi objekti, definirani znotraj uporabljenega bloka kode, bi morali implementirati vmesnik IDisposable, kar omogoča, da ogrodje po izhodu pokliče metode razpolaganja za določene predmete znotraj stavka.
Primer
Uporabo stavkov lahko kombiniramo s tipom, ki lahko implementira IDisposable, kot so StreamWriter, StreamReader itd.
Oglejmo si preprost program:
public class Program { public static void Main(string() args) { using (SysObj so = new SysObj()) { Console.WriteLine('Inside using statement'); } Console.WriteLine('Outside of the using statement block'); } } class SysObj : IDisposable { public void Dispose() { Console.WriteLine('Dispose method'); } }
Izhod
Rezultat zgornjega programa:
Notri z uporabo izjave
Metoda odstranjevanja
Zunaj bloka stavkov z uporabo
Pojasnilo
V zgornjem primeru, ko se program zažene, je najprej primerek “SysObj” dodeljen v kopico pomnilnika. Nato se blok using začne izvajati in natisne izhod, ki smo ga definirali znotraj konzole. Nato se izvedba takoj, ko se blok stavka Uporaba konča, prenese na metodo odstranjevanja.
Nato koda zapusti blok stavka in na konzolo natisne zunanji stavek.
Navidezna metoda C #
Kaj je navidezna metoda?
Navidezna metoda je metoda razreda, ki programerju ponuja funkcionalnost, da preglasi metodo v izpeljanem razredu, ki ima enak podpis. Virtualne metode se v glavnem uporabljajo za izvajanje polimorfizma v okolju OOP.
Navidezna metoda ima lahko izvedbo v izpeljanih in osnovnih razredih. Uporablja se predvsem, kadar mora imeti uporabnik več funkcij v izpeljanem razredu.
Navidezna metoda se najprej ustvari v osnovnem razredu, nato pa v izpeljanem razredu preglasi. Navidezno metodo lahko ustvarite v osnovnem razredu z uporabo ključne besede “virtual”, isto metodo pa lahko v izpeljanem razredu preglasite z uporabo ključne besede “override”.
Virtualne metode: nekaj točk, ki si jih je treba zapomniti
- Navidezna metoda v izpeljanem razredu ima navidezno ključno besedo, metoda v izpeljanem razredu pa mora imeti ključno besedo preglasitve.
- Če je metoda deklarirana kot navidezna metoda v osnovnem razredu, potem izpeljani razred ne zahteva, da jo preglasi, tj. Neobvezno, da preglasi navidezno metodo v izpeljanem razredu.
- Če ima metoda enako definicijo tako v osnovnem kot v izpeljanem razredu, potem metode ni treba preglasiti. Preglasitev je potrebna samo, če imata oba različno definicijo.
- Preglasitvena metoda nam omogoča, da za isto metodo uporabimo več oblik, zato kaže tudi polimorfizem.
- Vse metode so privzeto ne virtualne.
- Navideznega modifikatorja ni mogoče uporabiti skupaj z zasebnimi, statičnimi ali abstraktnimi modifikatorji.
Kakšna je uporaba navidezne ključne besede v jeziku C #?
Navidezna ključna beseda v C # se uporablja za preglasitev člana osnovnega razreda v izpeljanem razredu na podlagi zahteve.
Navidezna ključna beseda se uporablja za določanje navidezne metode v osnovnem razredu, pred metodo z istim podpisom, ki jo je treba v izpeljanem razredu preglasiti, pa je pred ključno besedo preglasi.
Razlika med abstraktno in virtualno metodo
Navidezne metode vsebujejo izvedbo in omogočajo, da jo izvedeni razred preglasi, medtem ko abstraktna metoda ne ponuja nobene izvedbe in programerje prisili, da v izpeljani razred napišejo metode preglasitve.
Zato z enostavnimi besedami abstraktne metode v sebi nimajo nobene kode, medtem ko ima virtualna metoda lastno izvedbo.
spajanje razvrščanje c ++ izvedba
Razlika med navideznim in razveljavljenim v C #
Navidezni ključni besedi ponavadi sledi podpis metode, lastnosti itd. In omogoča, da jo v izpeljanem razredu preglasi. Ključna beseda override se uporablja v izpeljanem razredu z enakim podpisom metode / lastnosti kot v osnovnem razredu, da se doseže preglasitev v izpeljanem razredu.
Ali je obvezno v C # preglasiti virtualno metodo?
Prevajalnik nikoli ne bo prisilil programerjev, da preglasijo navidezno metodo. Izvedeni razred ne zahteva vedno, da preglasi navidezno metodo.
Primer
Oglejmo si primer, da bomo jasneje razumeli virtualne metode.
V tem primeru bomo v osnovnem razredu uporabili dve različni metodi, prva je neviralna metoda, druga pa virtualna metoda z navidezno ključno besedo. Obe metodi bosta v izpeljanem razredu razveljavili.
Oglejmo si:
Program
using System; public class Program { public static void Main(string() args) { calculate calc = new calculate (); numbers nmbr = calc; calc.addition(); nmbr.addition(); calc.subtraction(); nmbr.subtraction(); } } public class numbers { public void addition(){ Console.WriteLine('This is addition method'); } public virtual void subtraction(){ Console.WriteLine('This is subtraction method'); } } public class calculate : numbers { public void addition(){ Console.WriteLine('This is addition method in the derived class'); } public override void subtraction(){ Console.WriteLine('This is subtraction method override in derived class'); } }
Izhod
Rezultat zgornjega programa je:
To je metoda seštevanja v izpeljanem razredu
To je metoda seštevanja
To je razveljavitev metode odštevanja v izpeljanem razredu
To je razveljavitev metode odštevanja v izpeljanem razredu
Pojasnilo
V zgornjem primeru imamo dva razreda, torej Število in Izračun. Osnovni razred Number ima dve metodi, to je seštevanje in odštevanje, pri čemer je seštevanje ne virtualna metoda, odštevanje pa navidezna metoda. Ko torej izvajamo ta program, je v izpeljanem razredu Calculate navidezna metoda »dodajanje« osnovnega razreda razveljavljena.
V drugem razredu »Program« ustvarimo vstopno točko za ustvarjanje primerka izpeljanega razreda Calculate in nato isti primerek dodelimo predmetu primerka osnovnega razreda.
Ko prikličemo navidezne in ne-navidezne metode z uporabo primerkov razreda, vidimo, da je bila navidezna metoda razveljavljena z uporabo obeh primerkov, medtem ko je bila navidezna metoda razveljavljena samo med klicem izvedenega razreda.
Zaključek
Stavek using v C # se v glavnem uporablja za upravljanje virov. Stavek using določa pogojno mejo za obstoj predmeta.
Ko se izvedba premakne iz bloka stavkov, pove, da ogrodje uniči kateri koli predmet, ki je bil ustvarjen znotraj bloka stavkov. Koda, definirana znotraj stavka, mora prav tako izvajati vmesnik IDisposable, ki omogoča ogrodju .Net, da pokliče metodo dispose za definirane predmete.
Navidezna metoda omogoča uporabniku, da preglasi metodo v izpeljanem razredu, ki ima enak podpis kot metoda v osnovnem razredu. Navidezno metodo lahko uporabimo za doseganje polimorfizma v objektno usmerjenih programskih jezikih.
Navidezna metoda se uporablja predvsem, kadar je v izpeljanem razredu potrebna dodatna funkcionalnost. Virtualne metode ne morejo biti zasebne statične ali abstraktne. Določi se z uporabo navidezne ključne besede v osnovnem razredu in preglasitve ključne besede v izpeljanem razredu.
=> Tukaj si oglejte podrobne vaje za usposabljanje za C #
Priporočeno branje
- Vadnica Python DateTime s primeri
- Vadnica za iskanje selena z besedilom s primeri
- Metoda sortiranja () MongoDB () s primeri
- Poizvedbeni dokument MongoDB z uporabo metode Find () (primeri)
- Uporaba kazalca v MongoDB s primeri
- Razredi in predmeti C #: poglobljena vadnica s primeri
- Vadnica za skriptiranje lupine Unix s primeri
- Vadnica za ravnanje z izjemami C # s primeri kode