Különbség a Typecript felület és az osztály között
Az interfész meghatározza a struktúrát, amelyet az osztály származtatása követ. Ez egy olyan szerződés, amelyet bármely entitás követ, az Interfész számos dolgot tartalmaz tulajdonságokként és eseményeket, módszereket, és ezeket mind a felület tagjainak hívják. Az interfész ezen tagok egyetlen nyilatkozatát tartalmazza, ezeket a tagokat az interfész Derving osztálya fogja végrehajtani. Az interfész kulcsszója használja a felület deklarálását.
Interfész deklarációs példa.
Szintaxis:
interfész interfész_neve
(
)
felület Munkavállaló (
FIRSTNAME: string,
lastName: string,
sayHello: () => karakterlánc
)
var vevő: Munkavállaló = (
FIRSTNAME:”Tom”,
lastName:”Hanks”
sayHello: (): string => (return “Szia ott”)
)
console.log (“Ügyfél-objektum”)
console.log (customer.firstName)
console.log (customer.lastName)
console.log (customer.sayHello ())
A fenti példa egy interfészt határoz meg. Az ügyfélobjektum Munkavállaló típusú.
Most az objektumra nézve kötelező lesz az összes tulajdonság meghatározása a felület által meghatározottak szerint.
A fordítás során az alábbi JavaScript kódot állítja elő.
// Írta: 1.8.10
var customer = (firstName: “Tom”, lastName: “Hanks”,
sayHello: function () (return “Szia ott”; )
);
console.log (“Ügyfél-objektum”);
console.log (customer.firstName);
console.log (customer.lastName);
console.log (customer.sayHello ());
A fenti példakód kimenete: -
Vevői tárgy
Tomi
Hanks
Szia
Az osztály egy objektum terve; ez az objektumorientált programozási nyelv fogalma. Egy osztály biztosítja az OOP beágyazásának jellemzőit. Az adatelemeket, a módszereket és a konstruktorokat egységes egységbe csomagolja, amelyet osztálynak hívnak, és így kapszulákat biztosít. Egy korábbi osztályt a Typescript nem támogatott, a Typescript ES6 verziója támogatta. Az osztály kulcsszó az osztályok létrehozásához használható a Typescript-ben.
Szintaxis:-
osztály osztály_neve (
//csinálni
)
egy osztály adattagokat, metódusokat és konstruktort tartalmaz;
Az adattagokat mezőnek is hívják, ez az Objektum tulajdonságait képviseli, amelyeket egy osztály hoz létre
A megfelelő kötés az objektum állapota, például a toll színe, magassága, a szélességet egy tárgy tulajdonságainak nevezzük.
A módszerek egy objektum viselkedését képviselik, mint például a toll funkciók írása. A kávéfőző különféle típusú kávét készíthet, ezt egy objektum viselkedésének nevezik.
A konstruktorok hozzászoktak egy objektum előállításához egy meghatározott osztályhoz, hogy azt szükség szerint felhasználhassák. Ez az osztály mezőjének inicializálásáért is felelős.
Ezeket a hármat egy osztály tagjának hívják, amelyet osztályokba egy egységekbe foglalnak be.
Vegyünk egy osztály alkalmazottját gépeléssel.
osztály alkalmazott (
)
Összeállításkor a következő JavaScript kódot generálja.
// Írta: 1.8.10
var alkalmazott = (funkció () (
munkavállalói funkció () (
)
munkavállaló visszatérése;
) ());
Példa: Osztály deklarálása
osztály CarDemo (
// mező nyilatkozat
motor: string;
// kivitelező nyilatkozata
kivitelező (motor: húr) (
ez.motor = motor
)
// funkció deklaráció
show (): érvénytelen (
console.log (“Motor:“ + ez.motor ”)
)
)
A fenti példában az osztálynév a CarDemo, amelynek mezőnév-motorral rendelkezik olyan konstruktorral, amely inicializálja a mezőnév-motort, ez a kulcsszó az aktuális osztálypéldányra utal, ezért. motor = motor írva, egyetlen módszernévvel - mutassa meg, hogy melyik mezõértéket adta meg, amelyet a konstruktor inicializált.
A fenti kód összeállításakor a következő JavaScript kód jön létre.
// Írta: 1.8.10
var CarDemo = (function () (
funkció CarDemo (motor) (
ez.motor = motor;
)
CarDemo.prototype.show = function () (
console.log (“Motor:” + ez.motor);
);
vissza CarDemo;
) ());
A fenti osztály példányobjektumainak létrehozása
Az osztály példányának létrehozásához az alkalmazott új kulcsszó, amelyet az osztály neve követ. Ennek szintaxisa az alábbiakban található -
Szintaxis
var objektumnév = új osztálynév ((argumentumok))
Az új kulcsszó felelős a megvalósításért.
A kifejezés jobb oldala felhívja az építőt. A konstruktornak át kell adnia az értékeket, ha paraméterezve van.
/ objektum létrehozása
var obj = új CarDemo („XXSY1”);
// a mező elérése
console.log (“A motor attribútumértékének olvasása:” + obj.engine);
// a funkció elérése
obj.show ();
A fenti kód kimenete a következő:
A motor attribútumértékét XXSY1 formátumban olvassa le
Funkciókijelzők: Motor: XXSY1
Head-to-Head összehasonlítás a Tycript-felület és az osztály között
Az alábbiakban a 4 legfontosabb különbség van a Typescript interfész és az osztály között
Legfontosabb különbségek a Typescript interfész és az osztály között
Mindkét Typescript interfész vs. osztály népszerű választás a piacon; vitassuk meg néhány, a Typescript interfész és az osztály közötti főbb különbséget:
- Az interfész határozza meg az interfész osztályának levezetésére szolgáló struktúrákat. egy interfész az egyetlen tagfunkciók deklarációját tartalmazza.
- Az osztály felelős az interfész struktúrájának megvalósításáért azáltal, hogy megadja az interfész funkciójának testét. Ez biztosítja a beágyazást az adattagok becsomagolásával, a függvényeket egy osztályba nevezett dobozba helyezi, amely így az OPP-k beágyazási jellemzőit biztosítja.
- Az interfész kulcsszó segítségével felületet hozhat létre, amely adattagokat, funkciókat tartalmaz.
- Az Osztály kulcsszó az osztály tagjait, funkcióit, konstruktorait tartalmazó osztály létrehozására szolgál.
- A felület teljesen eltávolítva a kód összeállítása során. Míg az osztály nem távolítja el a kód fordítása során.
- Az egyik interfész kiterjesztheti a másik felületet a kulcsszó kiterjesztésével, így a felület öröklést biztosít. Az interfész nem bővíti az osztályt, hanem meghatározza az osztály szerkezetét. Az interfész több öröklést támogat, több interfész együttes kiterjesztésével.
- Az osztály a felületet kulcsszóval valósítja meg, az osztály kibővíthet más osztályt is, kiterjesztve kulcsszóval is, így a gyermekosztály szülőosztályt is használhat. Ezt a funkciót öröklésnek nevezzük, az osztály nem támogatja a több öröklést, mivel egyszerre csak egy felület létezik az osztály által. interfészen keresztül lehetséges.
Typescript interfész és osztály összehasonlítása
Nézzük meg a Typescript interfész és az osztály részletes leírását
A typcript felület és az osztály összehasonlításának alapjai | Felület | Osztály |
Meghatározás | Az interfész egy struktúrát határoz meg, amelyet osztály származtatása követ. | Az adattagokat, a módszereket és a konstruktorokat egységes egységbe csomagolja, amelyet osztálynak hívnak. |
Használat | Entitás struktúrájának létrehozása. | Objektum létrehozása, mezők beágyazása, módszer |
Valós idejű használat | Tervezési minta, projekt szerkezetének megtervezése | Meghatározott architektúrák megvalósítása |
Létrehozási kulcsszó | az interfész kulcsszója egy interfész létrehozásához használható. | az osztály kulcsszója az osztály létrehozásához. |
Következtetés - Tipográfiai felület vs osztály
A Typscript interfésznek és az osztálynak egyaránt más célja van a szoftverfejlesztés területén. Az interfész adja az osztály szerkezeti építőelemeit, míg ezeket a szerkezeteket az osztály hajtja végre, amelyen keresztül az osztály tárgya létrejött.
Az interfész segítségével fejlesztjük a szoftver alapvető szerkezetét, amelyet a jövőben egy fejlesztő fejlesztett ki. A Class az interfészt az interfész módszerének egy részével biztosítja. Az interfész létrehozása a szoftverfejlesztés kezdeti szakaszában könnyű, amikor a követelmény nem egyértelmű, mivel rugalmasságot biztosít a változáshoz, mivel azt egy osztály fogja végrehajtani.
Ajánlott cikk
Ez egy útmutató a tippescript interfész és az osztály közötti legfontosabb különbségekhez. Itt is megvitatjuk a Typescript interfész vs az osztály kulcsfontosságú különbségeit az infographics és az összehasonlító táblázat segítségével. Lehet, hogy megnézi a következő cikkeket is -
- TypeScript típus vs interfész különbségek
- CoffeeScript vs TypeScript
- JavaScript vs TypeScript
- TypeScript vs Flow, melyik hasznosabb