Top 22 Groovy Interview Questions & Odpovede

Anonim

Stiahnite si PDF

1) Vysvetlite, čo je to Groovy?

Groovy je objektovo orientovaný programovací jazyk pre JVM (Java Virtual Machines). Používa sa na kombinovanie modulov Java, na písanie aplikácií Java a na rozširovanie existujúcich aplikácií Java.

2) Prečo používať Groovy?

  • Pre programátorov v jazyku Java poskytuje známu syntax
  • Má bohatú zásobu knižníc Java
  • Ľahko sa integruje do vašej existujúcej infraštruktúry, ako sú Servlet Containers, App Servers, veľa databáz s ovládačmi JDBC,
  • Úplne objektovo orientované
  • Má opakovane použiteľné a priraditeľné časti kódu
  • Prevádzkovatelia môžu byť preťažení
  • Doslovná deklarácia pre mapy, polia, rozsahy a regulárne výrazy
  • Má efektívnu navigáciu po objektoch

3) Aké je obmedzenie Groovy?

  • Groovy môže byť pomalší
  • Groovy možno bude potrebovať veľa pamäte
  • Groovy štartovací čas si vyžaduje zlepšenie
  • Vyžaduje znalosti Java
  • Niekedy trvá, kým si zvyknete obľubovať novú syntax, uzávierky, predvolené písanie,
  • Dokumentácia je tenká

4) Vysvetlite, ako sa spúšťajú skripty v aplikácii Groovy?

Groovy podporuje obyčajný skript; nevyžaduje deklaráciu triedy. Na začiatku skriptu sú importy podporované rovnako, ako to môže byť na začiatku triedy. V Groovy musíte na vyhlásenie funkcie mimo triedy použiť slovo def .

5) Uveďte, aké funkcie ponúka Groovy JDK?

Groovy pridal nové metódy v porovnaní so starou verziou ako

  • Rôzne typy polí a prúdy objektov s novo zameranými metódami Groovy

ako Object.every (), Object.each () atď. a tiež zahŕňajú nové funkcie ako „String BufferedReader.getText ()“ a „InputStream.eachLine (Closure)“.

6) Uveďte, aká je úloha uzavretia a poslucháčov v Groovy?

Groovy nepodporuje anonymné vnútorné triedy; je možné určiť poslucháčov akcií inline prostredníctvom uzáverov. V aplikácii Groovy sa uzávierka poslucháčov používa ako ListenerAdapter, kde je prepísaná iba jedna zaujímavá metóda.

7) Vysvetlite, ako môžete pridať veci do triedy, keď prevádzkujete veci v groove alebo groovysh?

Do svojej premennej prostredia $ CLASSPATH môžete pridať veci. Ďalšou možnosťou je vytvoriť adresár .groovy / lib vo svojom domovskom adresári a pripojiť všetky poháre, ktoré chcete mať predvolene k dispozícii.

8) Uveďte, aká je licencia pre Groovy?

Groovy závisia za behu na knižnici ASM, ako aj na Java 1.4 a Groovy jar.

9) Vysvetlite, čo je ExpandoMetaClass v aplikácii Groovy?

ExpandoMetaClass sa používa na pridanie metód, vlastností, statických metód a konštruktorov. Expandoclass štandardne nededí; musíte zavolať ExpandoMetaClass.enableGlobally ().

10) Vysvetlite, ako je vyjadrený Groovy reťazec?

Groovy struna sa označuje ako Gstring.

  • Je obklopený úvodzovkami, pre bežné reťazce používa jednoduché úvodzovky
  • Môže obsahovať výrazy Groovy uvedené v $ {}
  • Syntax hranatej zátvorky sa dá použiť ako charAt (i)

11) Ako by ste pomocou aplikácie Groovy mohli načítať jednu hodnotu z databázy?

Na obnovenie jednej hodnoty z databázy môžete použiť príkaz

row = sql.firstRow ('select columnA, column from tableName')
println "Row: columnA = $ {row.columnA} and column = ${row.columnB}"

12) Vysvetlite, ako môžete dotazovať v službe Groovy?

Pozrime sa na jednoduchý príklad toho, ako Groovy volá dopyt

import groovy.sql.sqlsql = Sql.newInstance ('jdbc: jtds: sqlserver://serverName/dbName-Class;domain=domainName','username','password','net.sourceforge.jtds.jdbc.driver')sql.eachRow ('select * from tableName') {print "$it.id--${it.firstName} -" }

13) Vysvetlite, ako môžete z reťazca zostaviť AST (Abstract Syntax Trees) v Groovy?

Môžete vytvoriť AST v Groovy od

  • Struny
  • Zákonníka
  • Z DSL ako špecifikácia

Objekt AstBuilder poskytuje API na zostavenie AST z reťazcov zdrojového kódu Groovy. Napríklad

Zoznam uzlov = nový AstBuilder (). buildFromString ("\" Dobrý deň \ "")

14) Vysvetlite, ako môžete zahrnúť groovy skript do iného groovy?

Groovy skript môžete zahrnúť do iného groovy pomocou nasledujúceho kódu. Keď tento kód umiestnite do hornej časti skriptu, prinesie obsah groovy súboru.

Vyhodnotiť (nový súbor („… /tools/Tools.groovy“))

15) Vysvetlite, čo je Groovysh?

Groovysh je aplikácia z príkazového riadku, ktorá umožňuje ľahký prístup na vyhodnotenie výrazov Groovy, definovanie tried a vykonávanie experimentov.

16) Vysvetliť komentár GroovyDoc?

Rovnako ako viacriadkové komentáre, aj komentáre GroovyDoc sú viacriadkové, ale začína sa znakom / ** a končí sa * /. Tieto komentáre súvisia s

  • Definície typov (triedy, rozhrania, enumy, anotácie)
  • Definície polí a vlastností
  • Definície metód

17) Vysvetlite, čo sú bitoví operátori v Groovy?

Bitové operátory je možné implementovať na BYTE alebo INT a return a INT. Bitové operátory ponúkajú 4 bitové operátory

  • &: bitové "a"
  • I: bitové „alebo“
  • Odpoveď: bitový reťazec „xor“
  • ~: bitová negácia

18) Uveďte rozdiely medzi programami Groovy a Java?

  • Všetky balíčky a triedy v aplikácii Groovy sa importujú predvolene, nemusíte výslovne používať príkaz na import
  • Na rozdiel od Javy, kde sa metódy vyberajú v čase kompilácie, sa metódy v Groovy vyberajú na základe typov argumentov za behu
  • V bloku… je blok vyhradený pre uzávierky, čo znamená, že s touto syntaxou nemôžete zostavovať literály poľa
  • Rovnako ako v Jave, vynechanie modifikátora v poli nevedie k vytvoreniu súkromného poľa v balíku
  • Groovy nepodporuje automatickú správu zdrojov alebo blok ARM z Java 7
  • Lambdy Java 8 sa viac-menej považujú za anonymné vnútorné triedy a Groovy túto syntax nepodporuje

19) Vysvetlite úlohu závislosti na hrozne v Groovy?

Grape je manažér závislostí JAR zahrnutý do Groovy. Umožňuje vám rýchlo pridať do archívu závislostí úložiska maven, čo uľahčuje skriptovanie. Najjednoduchšie použitie je pridanie anotácie do skriptu.

20) Vysvetlite, čo označuje trieda JsonSlurper?

JsonSlurper je trieda, ktorá analyzuje text JSON alebo obsah čítačky na dátové štruktúry (objekty) Groovy, ako sú zoznamy, mapy a primitívne typy, ako sú double, Boolean, string a Integer.

21) Keď sa volá metóda „propertyMissing (String)“?

Metóda "propertyMissing (String)" sa volá, keď Groovy runtime nezistí žiadnu metódu getra pre danú vlastnosť.

22) Uveďte, na čo sa používajú relačné operátory v Groovy?

Relačné operátory vám umožňujú porovnávať medzi objektmi a skontrolovať, či sú dva objekty odlišné alebo rovnaké, alebo či je jeden menší alebo väčší ako ostatné alebo rovnaké.