La API de Java es una librería de clases que vienen
predefinidas con Java. Hay dos tipos de clases de Javas: las propias (que
creamos nosotros) y las predefinidas que son las que vienen en la API. Hay que
ver como se organizan estas clases, al igual que un ordenador cuando creamos
archivos, documentos los guardamos de forma organizada en carpetas, es lo
recomendable. Las clases en Java también se organizan en carpetas, sin embargo,
Java a estas carpetas las denomina paquetes. Si nos vamos a la API de Java
vemos en la parte superior izquierda los paquetes:
Es una manera estructurada de organizar las clases. Los paquetes pueden
ser:
·
Java
o java.awt
o java.util
§ java.util.regex
o java.io
·
Javax
o javax.activity
o javax.annotation
Es decir, hay dos carpetas java y javax, dentro de la carpeta java a su
vez hay otras subcarpetas, así como en la carpeta javax.
Si vemos en la API de Java, por ejemplo, la clase java.awt:
Debajo hay otra que se llama java.awt.color, esto significa que dentro de
la carpeta java.awt se encuentra la carpeta java.awt.color, también se
encuentra la de datatransfer y todas las que empiecen spor java.awt son
subcarpetas de java.awt, pero esas carpetas también pueden tener otras carpetas
en su interior como es el caso de java.awt.image que contiene la subcarpeta
java.awt.image.renderable.
¿Por qué son necesarios los paquetes?
¿Por qué se inventarón?
·
Para organizar las clases
·
Para evitar conflictos de nombres
·
Para controlar la visibilidad de las
clases.
A continuación, en la siguiente imagen de forma organizada se muestran varios paquetes:
Hay muchos más pero esos son solo unos pocos, de entre ellos esta el
paquete java.lang, este paquete es el paquete por defecto que utiliza Java, es
el que hemos estado utilizando hasta ahora. Hemos utilizado la clase String, la
clase Math sin ningún problema, ya que estas clases se encuentran en el paquete
java.lang. Pero si creamos una variable objeto de tipo Scanner:
Ya nos está dando un error, si hacemos clic sobre el aspa:
El error que nos indica es que hay que importar el paquete java.util. Si
lo importamos:
Desaparece el error, si utilizamos otra variable objeto pero de tipo
Locale que también se encuentra dentro del paquete.java.util:
Me va a dar error porque aunque Locale se encuentra en el paquete
java.util hemos importado solo el paquete donde se encuentra Scanner. Si lo
importamos de esta manera:
import java.util.*;
Lo que estamos haciendo es importar todas las subpaquetes que se
encuentran en el paquete java.util. Esto es lo que se suele hacer para evitar
posibles errores al no importar el paquete conveniente, sin embargo, esto puede
ralentizar el código si es una aplicación extensa por lo que suele importar los
paquete que realmente necesitas, en este caso, tendriamos el paquete
java.util.Scanner y el paquete java.util.Locale.
La ventaja de Eclipse si da un error porque no has importado el paquete,
con tan solo darle un click Eclipse te la importa.
A lo largo del blog iremos utilizando bastante la API de Java.
No hay comentarios:
Publicar un comentario