Ero konekirjoitusrajapinnan ja luokan välillä

Rajapinta määrittelee rakenteen, jota johtaa luokka. Se on sopimus, jota noudattaa mikä tahansa yksikkö. Rajapinta sisältää monia asioita ominaisuuksina ja tapahtumia, menetelmiä, ja näitä kaikkia kutsutaan rajapinnan jäseniksi. Rajapinta sisältää näiden jäsenten ainoan ilmoituksen, nämä jäsenet toteuttaa kyseisen rajapinnan johtava luokka. Rajapinnan avainsanaa käytetään ilmoittamaan rajapinta.

Esimerkki liitäntäilmoituksesta.

Syntaksi:

käyttöliittymän_nimi

(

)

käyttöliittymä Työntekijä (

etunimi: string,

sukunimi: string,

sayHello: () => merkkijono

)

var asiakas: työntekijä = (

etunimi:”Tom”,

sukunimi:”Hanks”,

sayHello: (): merkkijono => (palauta "Hei siellä")

)

console.log (“asiakasobjekti”)

console.log (customer.firstName)

console.log (customer.lastName)

console.log (customer.sayHello ())

Yllä oleva esimerkki määrittelee käyttöliittymän. Asiakkaan kohde on tyyppi Työntekijä.

Nyt objektille on sitova määritellä kaikki ominaisuudet rajapinnan määrittelemällä tavalla.

Kokoonpanon yhteydessä se luo seuraavan JavaScripti-koodin.

// Tuotettu konekirjoituksella 1.8.10

var asiakas = (etunimi: “Tom”, sukunimi: “Hanks”,

sayHello: function () (paluu "Hei siellä"; )

);

console.log (“asiakasobjekti”);

console.log (customer.firstName);

console.log (customer.lastName);

console.log (customer.sayHello ());

Yllä olevan esimerkkikoodin tuloste: -

Asiakkaan esine

tom

Hanks

Hei siellä

Luokka on objektin suunnitelma; se on olio-ohjelmoidun kielen käsite. Luokka tarjoaa kapselointiominaisuuden OOP: iin. Se kietoi datajäsenet ja menetelmät ja rakentajat yhdeksi yhtenäiseksi, jota kutsutaan luokkaksi, tällä tavalla se tarjoaa kapselointeja. Typescript ei tukenut aikaisempaa luokkaa, se sai tukea Typescriptin ES6-versiosta. Luokan avainsanaa käytetään luokkien luomiseen konekirjoituksella.

Syntaksi:-

luokka luokan_nimi (

//tehdä

)

luokka sisältää datajäsenet, menetelmät ja rakentajan;

Tietojäsenet, joita kutsutaan myös kentäksi, edustavat luokan luoman objektin ominaisuuksia

Oikea solmio on esineen tila, kuten kynän väri, korkeus, leveyttä kutsutaan esineen ominaisuuksiksi.

Menetelmät edustavat esineen käyttäytymistä, kuten kynän toiminnallisuus kirjoittaa. Kahvinkeitin voi valmistaa erityyppisiä kahvia, jota kutsutaan esineen käyttäytymiseksi.

Rakentajat ovat tottuneet luomaan objektin määritettyyn luokkaan, niin että sitä voidaan käyttää vaadituissa paikoissa. Se vastaa myös luokan kentän alustamisesta.

Näitä kaikkia kolmea kutsutaan luokan jäseneksi, joka on kapseloitu luokittain yhdeksi yksiköksi.

Harkitse luokan työntekijää koneella.

luokan työntekijä (

)

Kääntäessään se luo seuraavan JavaScripti-koodin.

// Tuotettu konekirjoituksella 1.8.10

var Työntekijä = (toiminto () (

toiminto Työntekijä () (

)

palkata työntekijä;

) ());

Esimerkki: luokan julistaminen

luokka CarDemo (

// kenttäilmoitus

Moottori: string;

// rakentajan ilmoitus

rakentaja (moottori: merkkijono) (

tämä.moottori = moottori

)

// toimintoilmoitus

show (): tyhjä (

console.log (“Moottori on:“ + tämä.moottori)

)

)

Yllä olevassa esimerkissä luokan nimi on CarDemo, jolla kentän nimen moottorilla on rakentaja, joka alkaa kentän nimen moottorin, tämä avainsana viittaa nykyiseen luokan esiintymään, siksi tästä. moottori = kirjoitettu moottori, jolla on yksi menetelmän nimi - näytä mitkä näyttävät kentän arvot, jotka rakentaja on alustanut.

Kokoontamalla yllä olevan koodin, se tuottaa seuraavan JavaScript-koodin.

// Tuotettu konekirjoituksella 1.8.10

var CarDemo = (toiminto () (

toiminto CarDemo (moottori) (

tämä.moottori = moottori;

)

CarDemo.prototype.show = function () (

console.log (“Moottori on:” + tämä.moottori);

);

paluu CarDemo;

) ());

Yllä olevan luokan instanssiobjektien luominen

Luokan esiintymän luomiseksi käytetty uusi avainsana, jota seuraa luokan nimi. Saman syntaksi on annettu alla -

Syntaksi

var objektinimi = uusi luokan nimi ((argumentit))

Uusi avainsana on vastuussa toteutuksesta.

Lausekkeen oikea puoli kutsuu rakentajaa. Rakentajalle tulisi antaa arvot, jos se parametrisoidaan.

/ objektin luominen

var obj = uusi CarDemo (“XXSY1”);

// päästä kenttään

console.log (“Ominaisuuden arvon lukeminen moottori nimellä:” + obj.engine);

// käyttää toimintoa

obj.show ();

Yllä olevan koodin lähtö on seuraava -

Ominaisuuden arvon moottorin lukeminen muodossa XXSY1

Toimintanäytöt Moottori on: XXSY1

Head to Head -vertailu konekirjoitusrajapinnan ja luokan välillä

Alla on 4 suurinta eroa Typescript-käyttöliittymän ja luokan välillä

Typescript-käyttöliittymän ja luokan tärkeimmät erot

Molemmat Typescript-käyttöliittymät vs. luokka ovat suosittuja valintoja markkinoilla; keskustelemme joistakin tärkeimmistä eroista Typescript-käyttöliittymän ja luokan välillä:

  1. Rajapinta määrittelee rakenteellisesti kyseisen rajapinnan luokan saamiseksi. käyttöliittymä sisältää ainoan jäsentoimintojen ilmoituksen.
  2. Luokka on vastuussa rajapinnan rakenteen toteuttamisesta antamalla rajapinnan toiminnon runko. Se tarjoaa kapseloinnin kääntämällä tietojäsenet, toiminnot laatikkoon, jota kutsutaan luokkaksi tällä tavalla, ja se tarjoaa OPP: ien kapselointiominaisuudet.
  3. Rajapinnan avainsanaa käytetään luomaan käyttöliittymä, joka sisältää datajäseniä, toimintoja.
  4. Luokan avainsanaa käytetään luokan luomiseen, joka sisältää datajäsenet, toiminnot, rakentajat.
  5. Rajapinta poistettu kokonaan koodin kokoamisen aikana. Vaikka luokka ei poistu koodin kokoamisen aikana.
  6. Yksi käyttöliittymä voi laajentaa toisen käyttöliittymän laajentamalla avainsanaa tällä tavalla käyttöliittymä tarjoaa perintö. Interface ei laajenna luokkaa, se määrittelee luokan rakenteen. Rajapinta tukee useita perintöjä laajentamalla useita rajapintoja yhdessä.
  7. Luokka toteuttaa käyttöliittymän toteuttamalla avainsanan, luokka voi laajentaa muita luokkia myös käyttämällä laajentaa avainsanaa tällä tavalla lapsiluokka voi käyttää vanhemmuusluokkaa tätä ominaisuutta kutsutaan perimiseksi, luokka ei tue useita perintöjä, koska kerrallaan vain yksi luokan toteuttama rajapinta. se on mahdollista käyttöliittymällä.

Vertailu Typescript-käyttöliittymän ja luokan välillä

Katsokaamme yksityiskohtainen kuvaus Typescript-käyttöliittymä vs. luokasta

Typescript-käyttöliittymän ja luokan vertailun perusteet Käyttöliittymä luokka
MääritelmäRajapinta määrittelee rakenteen, jota seuraa johdettu luokka.Se käärii datajäsenet ja menetelmät ja rakentajat yhdeksi yhtenäiseksi, jota kutsutaan luokkaksi.
KäyttöRakenteen luominen kokonaisuudelle.Objektin luominen, kenttien kapselointi, menetelmä
Reaaliaikainen käyttöSuunnittelumalli, projektin rakenteen suunnitteluMääriteltyjen arkkitehtuurien toteutukset
Luomisen avainsanakäyttöliittymän avainsanaa käytetään rajapinnan luomiseen.luokan avainsanaa käytetään luokan luomiseen.

Johtopäätös - konekirjoitusrajapinta vs. luokka

Typescript-käyttöliittymällä vs. luokalla on molemmat erilainen tarkoitus ohjelmistokehitysalueella. Rajapinta antaa luokalle rakenteellisen rakennuspalikan, kun taas nämä rakenteet toteuttavat luokan kautta luokan objekti luotu.

Käytämme käyttöliittymää kehittääksemme ohjelmiston perusrakenteen, jota kehittäjä kehittää tulevaisuudessa. Class toteuttaa käyttöliittymän tarjoamalla runko menetelmän rajapinnalle. Rajapintojen luominen on helppoa ohjelmistokehityksen alkuvaiheessa, kun vaatimus ei ole selvä, koska se tarjoaa joustavuuden muutokseen, koska luokka toteuttaa sen.

Suositeltava artikkeli

Tämä on ollut opas tärkeimpiin eroihin Typescript-käyttöliittymän ja luokan välillä. Tässä keskustellaan myös Typescript-käyttöliittymä vs. luokan avaineroista infografioiden ja vertailutaulukon kanssa. Saatat myös katsoa seuraavia artikkeleita -

  1. TypeScript Type vs käyttöliittymäerot
  2. CoffeeScript vs TypeScript
  3. JavaScript vs TypeScript
  4. Typecript vs Flow Kumpi on hyödyllisempi