Groovy je izbirno tipiziran in dinamičen programski jezik za razvoj aplikacije na platformi Java. Sintaksa Groovyja je podobna Javi. Groovy je zelo zmogljiv, močan, dinamičen in statični programski jezik, ki razširja JDK. Z razširitvijo JDK lahko sprejme kodo Java. Groovy se ne uporablja le kot programski jezik, ampak tudi kot skriptni jezik. Programi Java se lahko izvajajo v okolju Groovy, ker je groovy nadnabor Jave. Programe, napisane v drugih programskih jezikih razen Jave, je morda mogoče izvajati v okolju Groovy ali pa tudi ne.
Groovy ne temelji samo na Javi, ampak združuje tudi moč drugih jezikov, kot je npr Python , Ruby in Smalltalk. S temi močmi ponuja Groovy več priložnosti kot Java .
Razumejmo razlike med Groovyjem in Javo:
da ne | Faktor | Groovy | Java |
---|---|---|---|
1. | Privzeti uvozi | java.io.*, java.lang.*, java.math.BigDecimal, java.net.*, groovy.lang.*, groovy.util.*, java.util.* in java.math.BigInteger je nekaj razredi in paketi splošnega namena, ki so privzeto uvoženi. | Java.lang.* je edini paket, ki je privzeto uvožen v Javo. |
2. | Ključne besede | V primerjavi z Javo ima Groovy tri dodatne ključne besede, tj. obešanje, pokop , in lastnost . | V Javi tega ne moremo uporabiti kot ključno besedo. |
3. | Modifikator dostopa | Javnost je privzeti modifikator dostopa v Groovyju. | Package-private je privzet modifikator dostopa v Javi. |
4. | Dobivalec in postavljalec | Groovy samodejno ustvari getter in setter za člane razreda. | Java ne zagotavlja samodejno pridobivanja in nastavljanja za člane razreda. Torej moramo definirati metodi getter in setter za člane razreda. |
5. | Operator pike | Groovy podpira tudi operator pike, vendar za razliko od Jave klici dejansko potekajo prek pridobivalnikov in nastavljalcev, ki so samodejno ustvarjeni v Groovyju. | Operator pika se uporablja za dostop do podatkovnih članov razreda. |
6. | Podpičje | Za razliko od Jave podpičja ni treba uporabljati. Uporablja se samo za pisanje več kot ene izjave v eno vrstico. | V Javi je podpičje obvezno za izjave. |
7. | Za zanko | V primerjavi z Javo je deklaracija zanke for veliko lažja. Zanko for deklariramo na naslednji način: for(j in 0..4){ print j } 0.do(3){ natisni '$it' } 4.krat{ natisni '$it' } | V Javi zanko for deklariramo na naslednji način: for(int I = 0; I<= 5; i++){ System.out.println(i); }=> |
8. | Operater varne navigacije | Da bi se izognili izjemi ničelnega kazalca, nam ni treba izvesti operacije za preverjanje ničelnega objekta. | V Javi moramo izvesti operacije za preverjanje, ali je objekt ničelni ali ne, da se izognemo izjemam ničelnega kazalca. |
9. | Uporaba metode main(). | V groovyju ni treba definirati metode main(), ker je tudi skriptni jezik in za vsak program vedno obstaja razred skripta (razred za zavijanje). | V Javi moramo za izvedbo razreda definirati metodo main(). |
10. | Boolovo vrednotenje | V Groovyju je izraz samodejno ovrednoten kot Boolean. | V Javi se izraz ne ovrednoti samodejno kot Boolean. |
enajst. | Deklaracija matrike | V groovyju uporabljamo zavite oklepaje ('{}') za deklaracijo matrike. Niz[] test1 = ['A', 'B', 'C'] | V Javi uporabljamo oglate oklepaje ('{}') za deklaracijo matrike. Niz[] test1 = ['A', 'B', 'C'] |
12. | Boxing in Unboxing | Koncepta samodejnega pakiranja in razpakiranja ni, ker je tukaj vse predmet. | Za izvajanje pakiranja in razpakiranja ima Java primitivne tipe podatkov in koncept razreda ovoja. |
Groovy je torej nadmnožica Java Java in programe Java lahko izvajamo v okolju Groovy. Groovy in Java sta si podobna in imata nekaj majhnih razlik, ki smo jih definirali zgoraj.