Groovy és un llenguatge de programació dinàmic i de tipus opcional per desenvolupar l'aplicació a la plataforma Java. La sintaxi de Groovy és similar a Java. Groovy és un llenguatge de programació molt potent, fort, dinàmic i estàtic que amplia JDK. En estendre el JDK, pot acceptar codi Java. Groovy no només s'utilitza com a llenguatge de programació sinó també com a llenguatge de script. Els programes Java es poden executar a l'entorn Groovy perquè groovy és un superconjunt de Java. Els programes escrits en altres llenguatges de programació, excepte Java, poden executar-se o no a l'entorn Groovy.
Genial no només es basa en Java, sinó que també combina el poder d'altres llenguatges com ara Python , Ruby i Smalltalk. Amb aquests poders, Groovy ofereix més oportunitats que Java .
Entenem les diferències entre Groovy i Java:
S.No. | Factor | Genial | Java |
---|---|---|---|
1. | Importacions per defecte | Els java.io.*, java.lang.*, java.math.BigDecimal, java.net.*, groovy.lang.*, groovy.util.*, java.util.* i java.math.BigInteger són alguns classes i paquets de propòsit general que s'importen per defecte. | El Java.lang.* és l'únic paquet que s'importa per defecte a Java. |
2. | Paraules clau | En la comparació de Java, Groovy té tres paraules clau addicionals, és a dir, penjat, enterrament , i tret . | A Java, no podem utilitzar això com a paraula clau. |
3. | Modificador d'accés | El públic és el modificador d'accés predeterminat a Groovy. | Package-private és un modificador d'accés predeterminat a Java. |
4. | Captador i posador | Groovy genera getter i setter automàticament per als membres de la classe. | Java no proporciona captador i configurador automàticament per als membres de la classe. Per tant, hem de definir mètodes d'obtenció i configuració per als membres de la classe. |
5. | Operador de punts | Groovy també admet l'operador de punts, però a diferència de Java, les trucades en realitat passen per captadors i configuradors, que es generen automàticament a Groovy. | L'operador de punt s'utilitza per accedir a les dades dels membres d'una classe. |
6. | Punts i coma | A diferència de Java, no cal utilitzar el punt i coma. Només s'utilitza per escriure més d'una declaració en una sola línia. | A Java, cal utilitzar el punt i coma per a les sentències. |
7. | Per bucle | En comparació amb Java, la declaració de for bucle és molt més fàcil. Declarem el bucle for de la següent manera: for(j en 0..4){ print j } 0.fins a (3){ imprimir '$it' } 4.vegades{ imprimir '$it' } | A Java, declarem el bucle for de la manera següent: for(int I = 0; I<= 5; i++){ System.out.println(i); }=> |
8. | Operador de navegació segura | Per evitar l'excepció del punter nul, no cal que realitzem una operació per comprovar l'objecte nul. | A Java, hem de realitzar operacions per comprovar si l'objecte és nul o no per evitar excepcions de punter nul. |
9. | Ús del mètode main(). | A groovy, no cal definir el mètode main() perquè també és un llenguatge de script i sempre hi ha una classe Script (classe d'embolcall) per a cada programa. | A Java, hem de definir el mètode main() per executar la classe. |
10. | Avaluació booleana | A Groovy, l'expressió s'avalua automàticament com a booleana. | A Java, l'expressió no s'avalua automàticament com a booleà. |
11. | Declaració de matriu | A groovy, fem servir claudàtors ('{}') per declarar una matriu. Cadena[] prova1 = ['A', 'B', 'C'] | A Java, fem servir claudàtors ('{}') per declarar una matriu. Cadena[] prova1 = ['A', 'B', 'C'] |
12. | Boxa i Unboxing | No hi ha concepte d'autoboxing i unboxing perquè aquí tot és l'objecte. | Per tal de realitzar boxing i unboxing, Java té tipus de dades primitius i el concepte de classe wrapper. |
Per tant, Groovy és un superconjunt de Java Java i podem executar programes Java en un entorn Groovy. Groovy i Java són similars i tots dos tenen algunes petites diferències, que hem definit anteriorment.