Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

Existen otras formas de mover las clases a otros packages, aunque aquí solamente explicaremos esta.

Una vez tenemos los dos package creados con clases en su interior, vamos a seguir añadiendo clases denrto de nuestro package example de forma que quede de la siguiente manera:

Para darle un toque más gracioso al ejemplo, vamos a añadir un método en cada una de las clases del package example llamado printSound() el cual tratará de imitar el ruido característico de ese transporte en particular.

Clase Coche:

Clase Ambulancia:

Clase Tren:

¿Porque no utilizar el package default para almacenar clases?

Actualmente tenemos dos package el default y el package example y ambos contienen clases.

Requisitos para importar una clase o paquete de Java

¿Qué pasaría si quiero acceder a las clases del package example desde el Main del  default package?  Pues muy sencillo, para ello necesitamos:

  • Que el package tenga un nombre NO nos vale el package por defecto.
  • Usar imports aunque veremos un ejemplo más abajo, un ejemplo podría ser:
      • import contenedores.Coche para la clase Coche ne particular
      • import contenedores.* para todas las clases
  • Preguntarnos si queremos acceder a todas las clases del package o solo a una o varias clases de dicho package en particular.
  • Y finalmente que la clase tenga permisos para ser accedida desde otro package. Es decir, que sea pública.

Tipos de imports en Java

Cuando realizamos un import tenemos dos maneras de traernos la clase o las clases que queremos:

  • Importar una determinada clase de un package: nos permite acceder a una clase de un package desde otro.  Vamos a ver un ejemplo donde queremos importar las clases Coche y Ambulancia del package example:

  • Importar de todas las clases de un package: nos permite acceder a todas las clases de un package desde otro package. Vamos a ver un ejemplo donde queremos importar todas las clases del package example:

Import individual vs Import del package

Importar todas las clases tiene como ventaja que podremos acceder a todas las clases de nuestra aplicación.

Importar todas las clases tiene como desventaja que el performace (rendimiento) de nuestra aplicación se verá afectado si existen muchas clases en el package que importamos. Bajo mi punto de vista solo tiene sentido utilizar este tipo de imports cuando se necesitan la gran mayoría de clases de un package. En caso contrario importaríamos clases individualmente.

Si solamente necesitamos una clase ¿Tiene sentido importar 100? La respuesta claramente es no.

¿Y si invertimos la operación e intentamos acceder a las clases del package default desde el package example?

Pues por fin, llegamos al kit de la cuestión, las clases creadas en el paquete predeterminado no pueden ser importadas por clases situadas en otros paquetes. Es por eso que no debe utilizar el paquete predeterminado.

¿Cómo podemos revertir este problema?

Pues muy sencillo, para resolver dicho problema tendremos que crear un nuevo package, donde meteremos la clase Main y de esta forma y una vez tenemos el package renombrado, poder acceder a las clases del package desde 

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

Existen otras formas de mover las clases a otros packages, aunque aquí solamente explicaremos esta.

Una vez tenemos los dos package creados con clases en su interior, vamos a seguir añadiendo clases denrto de nuestro package example de forma que quede de la siguiente manera:

Para darle un toque más gracioso al ejemplo, vamos a añadir un método en cada una de las clases del package example llamado printSound() el cual tratará de imitar el ruido característico de ese transporte en particular.

Clase Coche:

Clase Ambulancia:

Clase Tren:

¿Porque no utilizar el package default para almacenar clases?

Actualmente tenemos dos package el default y el package example y ambos contienen clases.

Requisitos para importar una clase o paquete de Java

¿Qué pasaría si quiero acceder a las clases del package example desde el Main del  default package?  Pues muy sencillo, para ello necesitamos:

  • Que el package tenga un nombre NO nos vale el package por defecto.
  • Usar imports aunque veremos un ejemplo más abajo, un ejemplo podría ser:
      • import contenedores.Coche para la clase Coche ne particular
      • import contenedores.* para todas las clases
  • Preguntarnos si queremos acceder a todas las clases del package o solo a una o varias clases de dicho package en particular.
  • Y finalmente que la clase tenga permisos para ser accedida desde otro package. Es decir, que sea pública.

Tipos de imports en Java

Cuando realizamos un import tenemos dos maneras de traernos la clase o las clases que queremos:

  • Importar una determinada clase de un package: nos permite acceder a una clase de un package desde otro.  Vamos a ver un ejemplo donde queremos importar las clases Coche y Ambulancia del package example:

  • Importar de todas las clases de un package: nos permite acceder a todas las clases de un package desde otro package. Vamos a ver un ejemplo donde queremos importar todas las clases del package example:

Import individual vs Import del package

Importar todas las clases tiene como ventaja que podremos acceder a todas las clases de nuestra aplicación.

Importar todas las clases tiene como desventaja que el performace (rendimiento) de nuestra aplicación se verá afectado si existen muchas clases en el package que importamos. Bajo mi punto de vista solo tiene sentido utilizar este tipo de imports cuando se necesitan la gran mayoría de clases de un package. En caso contrario importaríamos clases individualmente.

Si solamente necesitamos una clase ¿Tiene sentido importar 100? La respuesta claramente es no.

¿Y si invertimos la operación e intentamos acceder a las clases del package default desde el package example?

Pues por fin, llegamos al kit de la cuestión, las clases creadas en el paquete predeterminado no pueden ser importadas por clases situadas en otros paquetes. Es por eso que no debe utilizar el paquete predeterminado.

¿Cómo podemos revertir este problema?

Pues muy sencillo, para resolver dicho problema tendremos que crear un nuevo package, donde meteremos la clase Main y de esta forma y una vez tenemos el package renombrado, poder acceder a las clases del package desde 

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

¿Cómo crear un package en Java?

Vamos a New > Other > Package

Y escribimos el nombre del package:

Y si por ejemplo queremos mover la clase Coche ya que la clase Main, de momento la dejamos en el default package ya que será gracias a la cual veremos el por qué no trabajar desde el package por default. Para mover la clase Coche vamos a:

Si nos fijamos de hecho, la caja del package al estar vacía inicialmente tiene un color blanco.

Y este se transformará a marrón al mover nuestra clase Coche. Finalmente, podemos que ya tenemos la clase Main dentro del package example:

Existen otras formas de mover las clases a otros packages, aunque aquí solamente explicaremos esta.

Una vez tenemos los dos package creados con clases en su interior, vamos a seguir añadiendo clases denrto de nuestro package example de forma que quede de la siguiente manera:

Para darle un toque más gracioso al ejemplo, vamos a añadir un método en cada una de las clases del package example llamado printSound() el cual tratará de imitar el ruido característico de ese transporte en particular.

Clase Coche:

Clase Ambulancia:

Clase Tren:

¿Porque no utilizar el package default para almacenar clases?

Actualmente tenemos dos package el default y el package example y ambos contienen clases.

Requisitos para importar una clase o paquete de Java

¿Qué pasaría si quiero acceder a las clases del package example desde el Main del  default package?  Pues muy sencillo, para ello necesitamos:

  • Que el package tenga un nombre NO nos vale el package por defecto.
  • Usar imports aunque veremos un ejemplo más abajo, un ejemplo podría ser:
      • import contenedores.Coche para la clase Coche ne particular
      • import contenedores.* para todas las clases
  • Preguntarnos si queremos acceder a todas las clases del package o solo a una o varias clases de dicho package en particular.
  • Y finalmente que la clase tenga permisos para ser accedida desde otro package. Es decir, que sea pública.

Tipos de imports en Java

Cuando realizamos un import tenemos dos maneras de traernos la clase o las clases que queremos:

  • Importar una determinada clase de un package: nos permite acceder a una clase de un package desde otro.  Vamos a ver un ejemplo donde queremos importar las clases Coche y Ambulancia del package example:

  • Importar de todas las clases de un package: nos permite acceder a todas las clases de un package desde otro package. Vamos a ver un ejemplo donde queremos importar todas las clases del package example:

Import individual vs Import del package

Importar todas las clases tiene como ventaja que podremos acceder a todas las clases de nuestra aplicación.

Importar todas las clases tiene como desventaja que el performace (rendimiento) de nuestra aplicación se verá afectado si existen muchas clases en el package que importamos. Bajo mi punto de vista solo tiene sentido utilizar este tipo de imports cuando se necesitan la gran mayoría de clases de un package. En caso contrario importaríamos clases individualmente.

Si solamente necesitamos una clase ¿Tiene sentido importar 100? La respuesta claramente es no.

¿Y si invertimos la operación e intentamos acceder a las clases del package default desde el package example?

Pues por fin, llegamos al kit de la cuestión, las clases creadas en el paquete predeterminado no pueden ser importadas por clases situadas en otros paquetes. Es por eso que no debe utilizar el paquete predeterminado.

¿Cómo podemos revertir este problema?

Pues muy sencillo, para resolver dicho problema tendremos que crear un nuevo package, donde meteremos la clase Main y de esta forma y una vez tenemos el package renombrado, poder acceder a las clases del package desde 

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

¿Cómo crear un package en Java?

Vamos a New > Other > Package

Y escribimos el nombre del package:

Y si por ejemplo queremos mover la clase Coche ya que la clase Main, de momento la dejamos en el default package ya que será gracias a la cual veremos el por qué no trabajar desde el package por default. Para mover la clase Coche vamos a:

Si nos fijamos de hecho, la caja del package al estar vacía inicialmente tiene un color blanco.

Y este se transformará a marrón al mover nuestra clase Coche. Finalmente, podemos que ya tenemos la clase Main dentro del package example:

Existen otras formas de mover las clases a otros packages, aunque aquí solamente explicaremos esta.

Una vez tenemos los dos package creados con clases en su interior, vamos a seguir añadiendo clases denrto de nuestro package example de forma que quede de la siguiente manera:

Para darle un toque más gracioso al ejemplo, vamos a añadir un método en cada una de las clases del package example llamado printSound() el cual tratará de imitar el ruido característico de ese transporte en particular.

Clase Coche:

Clase Ambulancia:

Clase Tren:

¿Porque no utilizar el package default para almacenar clases?

Actualmente tenemos dos package el default y el package example y ambos contienen clases.

Requisitos para importar una clase o paquete de Java

¿Qué pasaría si quiero acceder a las clases del package example desde el Main del  default package?  Pues muy sencillo, para ello necesitamos:

  • Que el package tenga un nombre NO nos vale el package por defecto.
  • Usar imports aunque veremos un ejemplo más abajo, un ejemplo podría ser:
      • import contenedores.Coche para la clase Coche ne particular
      • import contenedores.* para todas las clases
  • Preguntarnos si queremos acceder a todas las clases del package o solo a una o varias clases de dicho package en particular.
  • Y finalmente que la clase tenga permisos para ser accedida desde otro package. Es decir, que sea pública.

Tipos de imports en Java

Cuando realizamos un import tenemos dos maneras de traernos la clase o las clases que queremos:

  • Importar una determinada clase de un package: nos permite acceder a una clase de un package desde otro.  Vamos a ver un ejemplo donde queremos importar las clases Coche y Ambulancia del package example:

  • Importar de todas las clases de un package: nos permite acceder a todas las clases de un package desde otro package. Vamos a ver un ejemplo donde queremos importar todas las clases del package example:

Import individual vs Import del package

Importar todas las clases tiene como ventaja que podremos acceder a todas las clases de nuestra aplicación.

Importar todas las clases tiene como desventaja que el performace (rendimiento) de nuestra aplicación se verá afectado si existen muchas clases en el package que importamos. Bajo mi punto de vista solo tiene sentido utilizar este tipo de imports cuando se necesitan la gran mayoría de clases de un package. En caso contrario importaríamos clases individualmente.

Si solamente necesitamos una clase ¿Tiene sentido importar 100? La respuesta claramente es no.

¿Y si invertimos la operación e intentamos acceder a las clases del package default desde el package example?

Pues por fin, llegamos al kit de la cuestión, las clases creadas en el paquete predeterminado no pueden ser importadas por clases situadas en otros paquetes. Es por eso que no debe utilizar el paquete predeterminado.

¿Cómo podemos revertir este problema?

Pues muy sencillo, para resolver dicho problema tendremos que crear un nuevo package, donde meteremos la clase Main y de esta forma y una vez tenemos el package renombrado, poder acceder a las clases del package desde 

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);

Anteriormente, ya habíamos estado hablando sobre los package en nuestro artículo de: Introducción a los package de Java. Aunque hasta ahora, trabajar con el default package no nos ha traído problemas ni dolores de cabeza.

Pero si creamos un proyecto nuevo y empezamos a añadir clases y lo hacemos sin definir ningún package, estás clases se almacenarán automáticamente en el default package o también conocido bajo el nombre de paquete por defecto.

Al crear las clases podemos ver como el propio Java nos muestra una advertencia junto a un símbolo de exclamación alertándonos de que se desaconseja el uso del paquete por defecto.

Normalmente, hacemos caso omiso de esta advertencia y continuamos con su creación y a largo plazo esta consecuencia aunque no son irreversibles, nos puede traer una serie de problemas. Vamos a ver un ejemplo de ello y de paso a aprender a importar clases de otros packages.

Una vez creada ambas clases, si desplegamos el proyecto en nuestro explorador de packages como no hemos definido ningún package, podemos comprobar cómo nos sale una especie de caja (el default package) que como ya hemos dicho anteriormente si no se especifica un paquete será el que englobe a todas las clases que hemos creado sin paquete.

¿Cómo crear un package en Java?

Vamos a New > Other > Package

Y escribimos el nombre del package:

Y si por ejemplo queremos mover la clase Coche ya que la clase Main, de momento la dejamos en el default package ya que será gracias a la cual veremos el por qué no trabajar desde el package por default. Para mover la clase Coche vamos a:

Si nos fijamos de hecho, la caja del package al estar vacía inicialmente tiene un color blanco.

Y este se transformará a marrón al mover nuestra clase Coche. Finalmente, podemos que ya tenemos la clase Main dentro del package example:

Existen otras formas de mover las clases a otros packages, aunque aquí solamente explicaremos esta.

Una vez tenemos los dos package creados con clases en su interior, vamos a seguir añadiendo clases denrto de nuestro package example de forma que quede de la siguiente manera:

Para darle un toque más gracioso al ejemplo, vamos a añadir un método en cada una de las clases del package example llamado printSound() el cual tratará de imitar el ruido característico de ese transporte en particular.

Clase Coche:

Clase Ambulancia:

Clase Tren:

¿Porque no utilizar el package default para almacenar clases?

Actualmente tenemos dos package el default y el package example y ambos contienen clases.

Requisitos para importar una clase o paquete de Java

¿Qué pasaría si quiero acceder a las clases del package example desde el Main del  default package?  Pues muy sencillo, para ello necesitamos:

  • Que el package tenga un nombre NO nos vale el package por defecto.
  • Usar imports aunque veremos un ejemplo más abajo, un ejemplo podría ser:
      • import contenedores.Coche para la clase Coche ne particular
      • import contenedores.* para todas las clases
  • Preguntarnos si queremos acceder a todas las clases del package o solo a una o varias clases de dicho package en particular.
  • Y finalmente que la clase tenga permisos para ser accedida desde otro package. Es decir, que sea pública.

Tipos de imports en Java

Cuando realizamos un import tenemos dos maneras de traernos la clase o las clases que queremos:

  • Importar una determinada clase de un package: nos permite acceder a una clase de un package desde otro.  Vamos a ver un ejemplo donde queremos importar las clases Coche y Ambulancia del package example:

  • Importar de todas las clases de un package: nos permite acceder a todas las clases de un package desde otro package. Vamos a ver un ejemplo donde queremos importar todas las clases del package example:

Import individual vs Import del package

Importar todas las clases tiene como ventaja que podremos acceder a todas las clases de nuestra aplicación.

Importar todas las clases tiene como desventaja que el performace (rendimiento) de nuestra aplicación se verá afectado si existen muchas clases en el package que importamos. Bajo mi punto de vista solo tiene sentido utilizar este tipo de imports cuando se necesitan la gran mayoría de clases de un package. En caso contrario importaríamos clases individualmente.

Si solamente necesitamos una clase ¿Tiene sentido importar 100? La respuesta claramente es no.

¿Y si invertimos la operación e intentamos acceder a las clases del package default desde el package example?

Pues por fin, llegamos al kit de la cuestión, las clases creadas en el paquete predeterminado no pueden ser importadas por clases situadas en otros paquetes. Es por eso que no debe utilizar el paquete predeterminado.

¿Cómo podemos revertir este problema?

Pues muy sencillo, para resolver dicho problema tendremos que crear un nuevo package, donde meteremos la clase Main y de esta forma y una vez tenemos el package renombrado, poder acceder a las clases del package desde 

Y creamos el package principal:

Una vez creado, vamos a mover todas las clases que se encuentran situadas en el default package (en nuestro caso solamente Main.java) hacía el package principal. Para ello, vamos a:

Y si miramos ahora la venta de Package Explorer, podemos observar que ahora sí que la tenemos dentro de un package.

Pero para ello, antes vamos a añadir un método a la clase Main para cuando instanciemos la clase Main en una del package example usemos dicha clase y nos muestre un mensaje por consola. Quedando de la siguiente manera:

Ahora, finalmente, solo nos quedaría realizar el import en la clase que deseemos o bien importar el package entero como ya hemos visto anteriormente.

Si ahora por ejemplo vamos a la clase ambulancia e instanciamos la clase Main.java del package principal, podremos usar su método:

Si ejecutamos el programa vemos como estamos usando el método de la clase Main dentro de otro método de nuestra clase ambulancia:

Bueno, ya hemos visto cómo resolver el problema, y la explicación de porqué no utilizar el package default en nuestros proyectos. Por lo que este artículo ya llega a su fin.

System.out.print(«Un saludo javer@s»);