22 glavna pitanja za intervju za Groovy & Odgovori

Anonim

Preuzmite PDF

1) Objasnite što je Groovy?

Groovy je objektno orijentirani programski jezik za JVM (Java Virtual Machines). Koristi se za kombiniranje Java modula, za pisanje Java programa i proširivanje postojećeg Java programa.

2) Zašto koristiti Groovy?

  • Za programere Java pruža poznatu sintaksu
  • Ima bogat fond Java knjižnica
  • Lako se integrira s vašom postojećom infrastrukturom kao što su Servlet spremnici, poslužitelji aplikacija, hrpe baza podataka s JDBC upravljačkim programima,
  • Potpuno objektno orijentirano
  • Posjeduje dijelove koda za višekratnu upotrebu i dodjeljivanje
  • Operateri se mogu preopteretiti
  • Doslovna izjava za karte, nizove, domete i regularne izraze
  • Ima učinkovitu objektnu navigaciju

3) Koja su ograničenja Groovyja?

  • Groovy može biti sporiji
  • Groovyju će možda trebati puno memorije
  • Groovy vrijeme pokretanja zahtijeva poboljšanje
  • Potrebno je znanje Java
  • Ponekad je potrebno da se naviknete na to da volite novu sintaksu, zatvaranja, zadano tipkanje,
  • Dokumentacija je tanka

4) Objasnite kako se skripte pokreću u Groovyju?

Groovy podržava običnu skriptu; ne zahtijeva izjavu klase. Na prednjoj strani skripte, uvoz je podržan na isti način na koji to može biti i ispred klase. U Groovyju morate upotrijebiti riječ def da biste deklarirali funkciju izvan klase.

5) Spomenite koje značajke nudi Groovy JDK?

Groovy je dodao nove metode u odnosu na staru verziju poput

  • Razne vrste nizova i tokovi objekata s novim Groovy orijentiranim metodama

poput Object.every (), Object.each () itd., a uključuju i nove značajke poput "String BufferedReader.getText ()" i "InputStream.eachLine (Closure)".

6) Spomenite koja je uloga zatvaranja i slušatelja u Groovyju?

Groovy ne podržava anonimne unutarnje klase; moguće je odrediti slušatelje akcije u liniji pomoću sredstava zatvaranja. U Groovyju se zatvaranje slušatelja koristi kao adapter slušatelja gdje je nadjačana samo jedna metoda od interesa.

7) Objasnite kako možete dodati stvari na put predavanja kada pokrećete stvari u groovy ili groovysh?

Možete dodati stvari u svoju varijablu okruženja $ CLASSPATH. Druga mogućnost je izgraditi .groovy / lib direktorij u vašem početnom direktoriju i dodati sve staklenke za koje želite da budu dostupne prema zadanim postavkama.

8) Spomenite koja je licenca za Groovy?

Groovy tijekom izvođenja ovise o ASM knjižnici, kao io Javi 1.4 i Groovy jar-u.

9) Objasnite što je ExpandoMetaClass u Groovyju?

ExpandoMetaClass koristi se za dodavanje metoda, svojstava, statičkih metoda i konstruktora. Expandoclass se ne nasljeđuje prema zadanim postavkama; morate nazvati ExpandoMetaClass.enableGlobally ().

10) Objasnite kako se izražava Groovyjev niz?

Groovy string se naziva Gstring.

  • Okružen je dvostrukim navodnicima, za redovite nizove koristi pojedinačne navodnike
  • Može sadržavati Groovy Expressions zabilježene u $ {}
  • Sintaksa uglatih zagrada može se primijeniti poput charAt (i)

11) Kako možete dobiti jednu vrijednost iz baze podataka koristeći Groovy?

Da biste oporavili jednu vrijednost iz baze podataka, možete upotrijebiti naredbu

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

12) Objasnite kako možete postavljati upite u Groovyju?

Pogledajmo jednostavan primjer kako Groovy poziva upit

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) Objasnite kako možete izraditi AST (Abstraktna sintaksna stabla) u Groovyu iz niza?

AST možete graditi u Groovyju iz

  • Žice
  • Kodirati
  • Iz DSL-a poput specifikacije

AstBuilder objekt pruža API za izgradnju AST-a iz nizova Groovy-ovog izvornog koda. Na primjer

Popis čvorova = novi AstBuilder (). buildFromString ("\" Pozdrav \ "")

14) Objasnite kako možete uključiti groovy skriptu u drugi groovy?

Pomoću sljedećeg koda možete uključiti groovy skriptu s drugom groovy. Kad ovaj kôd stavite na vrh skripte, donijet će sadržaj groovy datoteke.

Procjena (nova datoteka ("... /tools/Tools.groovy"))

15) Objasnite što je Groovysh?

Groovysh je aplikacija naredbenog retka koja omogućuje jednostavan pristup za procjenu Groovyjevih izraza, definiranje klasa i pokretanje eksperimenata.

16) Objasnite komentar GroovyDoca?

Kao i višeredni komentari, i GroovyDoc komentari su višeredni, ali započinju s / ** i završavaju s * /. Ti su komentari povezani sa

  • Definicije tipova (klase, sučelja, nabrajanja, napomene)
  • Definicije polja i svojstava
  • Definicije metoda

17) Objasnite što su bitni operatori u Groovyju?

Bitovni operateri mogu se implementirati na BYTE ili INT i vratiti i INT. Bitovni operatori nude 4 bitna operatora

  • &: bitovno "i"
  • I: bitno "ili"
  • O: bitni "xor"
  • ~: bitna negacija

18) Navedi razlike između Groovyja i Jave?

  • Svi paketi i klase u Groovyju su uvezeni prema zadanim postavkama, ne morate eksplicitno koristiti izjavu o uvozu
  • Za razliku od Jave gdje se metode biraju u vrijeme kompajliranja, metode u Groovyju odabiru se na temelju vrsta argumenata u vrijeme izvođenja
  • U bloku {…} blok je rezerviran za zatvaranje, što znači da s ovom sintaksom ne možete graditi literal niza
  • Kao i u Javi, izostavljanje modifikatora na polju ne rezultira privatnim poljem paketa
  • Automatsko upravljanje resursima ili ARM blok iz jave 7 nisu podržani u Groovyu
  • Lambda Java 8 više se ili manje smatra anonimnim unutarnjim klasama, a Groovy ne podržava tu sintaksu

19) Objasnite ulogu ovisnosti grožđa u Groovyju?

Grape je upravitelj ovisnosti o JAR-u uključen u Groovy. Omogućuje vam brzo dodavanje ovisnosti spremišta maven na svoj put predavanja, što olakšava skriptiranje. Najjednostavnija je upotreba dodavanja napomene u svoju skriptu.

20) Objasnite na što ukazuje klasa JsonSlurper?

JsonSlurper je klasa koja raščlanjuje JSON tekst ili sadržaj čitača u Groovyjeve podatkovne strukture (objekte) kao što su popisi, mape i primitivni tipovi poput double, Boolean, string i Integer.

21) Kada se zove metoda "propertyMissing (String)"?

Metoda "propertyMissing (String)" poziva se kada Groovyjevo vrijeme izvođenja ne može otkriti niti jednu getter metodu za dano svojstvo.

22) Spomenite za što se koriste relacijski operatori u Groovyju?

Relacijski operatori omogućuju vam usporedbu među objektima, provjeru jesu li dva objekta različita ili ista ili je jedan manji, veći ili jednak drugima.