Prenesite PDF
1) Pojasnite, kaj je Scala?
Scala je objektno funkcionalni programski in skriptni jezik za splošne programske aplikacije, namenjene kratkemu izražanju rešitev.
2) Kaj je "Scala set"? Katere so metode, s katerimi se izražajo nabori operacij?
Nabor Scala je zbirka parnih elementov iste vrste. Nabor Scala ne vsebuje nobenih podvojenih elementov. Obstajata dve vrsti sklopov, spremenljivi in nespremenljivi.
3) Kaj je "Scala map"?
Zemljevid Scala je zbirka parov ključev ali vrednosti. Na podlagi njegovega ključa je mogoče pridobiti katero koli vrednost. Vrednosti niso enolične, ključi pa so na zemljevidu edinstveni.
4) V čem je prednost Scale?
- Funkcionalni slog z manj napak
- Visoka vzdržnost in produktivnost
- Visoka razširljivost
- Visoka preizkusnost
- Ponuja funkcije sočasnega programiranja
5) Na kakšen način je Scala boljša od drugega programskega jezika?
- Polja uporabljajo običajne generike, medtem ko so v drugem jeziku generiki pritrjeni kot naknadna misel in so popolnoma ločeni, vendar se prekrivajo z vezji.
- Scala ima nespremenljiv "val" kot prvovrstno jezikovno značilnost. "Val" skale je podoben končnim spremenljivkam Java. Vsebina lahko mutira, toda zgornja referenca je nespremenljiva.
- Scala omogoča, da vrne vrednost »if blocks«, »for-yield zanke« in »code«. Je bolj zaželena in odpravlja potrebo po ločenem ternarnem operaterju.
- Singleton ima enojne predmete in ne C ++ / Java / C # classic static. Je čistejša rešitev
- Stalne nespremenljive zbirke so privzete in vgrajene v standardno knjižnico.
- Ima domače korice in jedrnato kodo
- Nima kode kotlične plošče
6) Katere so spremenljivke Scala?
Vrednosti in spremenljivke so dve obliki, ki se pojavita v Scali. Spremenljivka vrednosti je konstantna in je po dodelitvi ni mogoče spremeniti. Je nespremenljiva, medtem ko je običajna spremenljivka po drugi strani spremenljiva in lahko spremenite vrednost.
Dve vrsti spremenljivk sta
var myVar: Int = 0;
val myVal: Int = 1;
7) Omeniti razliko med predmetom in razredom?
Predavanje je definicija opisa. Določa vrsto glede na metode in sestavo drugih vrst. Razred je načrt predmeta. Medtem pa je objekt singleton, primerek razreda, ki je unikaten. Anonimni razred se ustvari za vsak objekt v kodi in ga podeduje iz vseh razredov, za katere ste razglasili, da jih želite uporabiti.
8) Kaj je rekurzijski rep pri skali?
'Rekurzija' je funkcija, ki se sama pokliče. Funkcija, ki se sama pokliče, na primer funkcija 'A' pokliče funkcijo 'B', ki pokliče funkcijo 'C'. To je tehnika, ki se pogosto uporablja pri funkcionalnem programiranju. Da bi bil rep rekurziven, mora biti povratni klic funkcije zadnja izvedena funkcija.
9) Kaj je v skali značilnost skale?
'Značilnosti' se uporabljajo za določanje vrst predmetov, določenih s podpisom podprtih metod. Scala omogoča delno izvedbo, vendar lastnosti morda nimajo parametrov konstruktorja. Lastnost je sestavljena iz metode in opredelitve polja, tako da ju lahko z mešanjem v razrede ponovno uporabimo.
10) Kdaj lahko uporabljate lastnosti?
Ni posebnega pravila, kdaj lahko uporabljate lastnosti, vendar obstaja smernica, ki jo lahko upoštevate.
- Če vedenja ne bomo ponovno uporabili, naj bo konkreten razred. Vsekakor to ni vedenje za večkratno uporabo.
- Za podedovanje v kodo Java lahko uporabimo abstraktni razred.
- Če je učinkovitost prednostna naloga, se nagnite k uporabi razreda
- Naj bo to lastnost, če bo morda ponovno uporabljena v več in nepovezanih razredih. V različnih delih hierarhije razredov je mogoče v različne dele mešati samo lastnosti.
- Uporabite lahko abstraktni razred, če ga želite distribuirati v prevedeni obliki in pričakuje, da bodo zunanje skupine napisale razrede, ki ga podedujejo.
11) Kaj so razredi primerov?
Razredi primerov zagotavljajo rekurzivni mehanizem razgradnje z ujemanjem vzorcev, to so običajni razredi, ki izvozijo svoj parameter konstruktorja. Do parametrov konstruktorjev razredov primerov je mogoče neposredno dostopati in jih obravnavati kot javne vrednosti.
12) Kakšna je uporaba nabora v skali?
Torbe Scala združujejo določeno število predmetov skupaj, tako da jih je mogoče prenašati v celoti. Torta je nespremenljiva in lahko vsebuje predmete različnih vrst, za razliko od matrike ali seznama.
13) Kaj je funkcija currying v Scali?
Currying je tehnika pretvorbe funkcije, ki sprejme več argumentov v funkcijo, ki sprejme en argument. Scala podpira številne enake tehnike kot jezik, kot sta Haskell in LISP. Funkcija currying je ena najmanj uporabljenih in napačno razumljenih.
14) Kaj so implicitni parametri v Scali?
Implicitni parameter je način, ki omogoča "iskanje" parametrov metode. Podoben je privzetim parametrom, vendar ima drugačen mehanizem za iskanje "privzete" vrednosti. Implicitni parameter je parameter metode ali konstruktorja, ki je označen kot impliciten. To pomeni, da če vrednost parametra ni omenjena, bo prevajalnik poiskal »implicitno« vrednost, določeno znotraj obsega.
15) Kaj je zaprtje v Scali?
Zapiranje je funkcija, katere vrnjena vrednost je odvisna od vrednosti spremenljivk, deklariranih zunaj funkcije.
16) Kaj je Monad v Scali?
Monada je predmet, ki ovije drug predmet. Prenesete mini programe Monad, tj. Funkcije, da izvedete manipulacijo s podatki osnovnega predmeta, namesto da bi neposredno upravljali objekt. Monad izbere, kako program uporabiti za osnovni objekt.
17) Kaj je anonimna funkcija Scala?
V izvorni kodi se anonimne funkcije imenujejo 'funkcijski literali', v času izvajanja pa se funkcijski literali ustvarijo v predmete, imenovane vrednosti funkcij. Scala zagotavlja razmeroma enostavno sintakso za definiranje anonimnih funkcij.
18) Pojasnite funkcije 'Scala višjega reda'?
Scala omogoča opredelitev funkcij višjega reda. To so funkcije, ki druge funkcije jemljejo kot parametre ali katerih rezultat je funkcija. V naslednjem primeru funkcija apply () prevzame drugo funkcijo 'f' in vrednost 'v' ter funkcijo uporabi za v.
Primer:
object Test {def main(args: Array[String]) {println( apply( layout, 10) )}def apply(f: Int => String, v: Int) = f(v)def layout[A](x: A) = "[" + x.toString() + "]"Ko je zgornja koda sestavljena in izvedena, ima naslednji rezultat.
C:/>scalac Test.scalaC:/>scala Test[10]C:/>
19) Kakšna je razlika med var in vrednostjo?
V skali lahko spremenljivko definirate s ključnimi besedami a, val ali var. Razlika med val in var je, da je var podoben java deklaraciji, vendar se val malo razlikuje. Ko je spremenljivka deklarirana z uporabo val, sklicevanja ne moremo spremeniti tako, da kaže na drugo referenco. Spremenljivka, definirana z uporabo ključnih besed var, je spremenljiva in jo je mogoče spremeniti poljubno številokrat.
20) Kaj so možnosti, nekatere in nobene v skali?
„Možnost“ je generična vrsta Scale, ki je lahko bodisi „neka“ generična vrednost bodisi nobena. 'Čakalna vrsta' ga pogosto uporablja za predstavitev primitivov, ki so lahko nični.
21) Kako se dodam na seznam?
V skali za dodajanje na seznam uporabite »
:+” single value
var myList = List.empty[String]myList :+= "a"myList :+= "b"myList :+= "c"use++ for appending a listvar myList = List.empty[String]myList ++= List("a", "b", "c")
22) Kako lahko oblikujete niz?
Če želite formatirati niz, uporabite metodo .format () v skali, ki jo lahko uporabite
Val oblikovan = "% s% i" .format (mystring.myInt)
23) Zakaj Scala daje prednost nespremenljivosti?
Scala ima raje nespremenljivost pri oblikovanju in jo pogosto uporablja kot privzeto. Nespremenljivost lahko pomaga pri reševanju vprašanj enakosti ali sočasnih programov.
24) Katere so štiri vrste identifikatorjev skale?
Štiri vrste identifikatorjev so
- Alfa številski identifikatorji
- Identifikatorji operaterja
- Mešani identifikatorji
- Dobesedni identifikatorji
25) Katere so različne vrste dobesednih besedil Scala?
Različne vrste dobesednih besed v skali so
- Celoštevilčne literale
- Dobesedne besede s plavajočo vejico
- Logična literala
- Dobesedni znaki
- Znakovni literali
- String literals
- Večvrstični nizi