Académique Documents
Professionnel Documents
Culture Documents
Dummies)
Veremos algo muy importante tanto en la programacin como en la vida misma, que es mantener un orden para
las cosas.
Por eso vamos un poco ms all para entender la programacin en Java. Vamos a pensar en algo que se
mueva, para entenderlo mucho mejor algo que est diseado por los humanos, vamos por todo lo alto: un coche.
(https://jarroba.com/wp-content/uploads/2012/04/1-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Uso de cookies
Esta es nuestra idea, fabricar un coche y que funcione.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Como programadores no nos interesa el dibujo del coche como tal o la forma, sino las funcionalidades de
entrada-salida, en ingls lo veremos como Input-Output Qu es esto de entrada-salida? El nombre no es que sea muy
bonito ni original, pero es eso, algo que entra y algo que sale.
Vamos por partes. Pensemos en el motor del coche. Como programadores no nos podemos quedar en lo
superfluo, vamos a fabricar algo que tiene funcionalidad; y para fabricar algo con funcionalidad necesitamos entender lo
ms profundo de cmo funciona. Por si no lo sabas antes, considralo clase doble de programacin y de mecnica
automovilstica bsica: el motor del coche tiene pistones en el interior, supongamos que es de cuatro tiempos (ms
informacin en: http://es.wikipedia.org/wiki/Ciclo_de_cuatro_tiempos
(http://es.wikipedia.org/wiki/Ciclo_de_cuatro_tiempos)) como el siguiente -observa el Gif animado y el nmero que tiene
cada paso. Para que el pistn de cuatro tiempos funcione sigue estos pasos:
(https://jarroba.com/wp-content/uploads/2012/04/2-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.gif)
1.Entra gasolina y oxgeno en el pistn -fjate en el entra, es un Input 2. Comprime la gasolina 3. Hacen que la
gasolina entre en combustin para que explote 4. Salen gases y movimiento -fjate en el sale, es el Output
Ya tenemos algunas ideas para programar el coche. Para ir poco a poco empecemos.
Vamos a continuar llenando nuestra carpeta que se comporta como maletn de nuestros proyectos.
Si hemos cerrado Eclipse, al abrirlo veremos como nos pregunta por el espacio de trabajo que queremos usar.
Por defecto se guarda el ltimo que hemos usado, lo aceptamos o lo buscamos y aceptamos -si tienes dudas consulta
el tutorial de instalacin de Eclipse (https://jarroba.com/instalar-bien-eclipse-un-ide-de-muchos/), en la parte donde se
abre.
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/3-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_1.png)
Tendremos todo preparado para empezar a trabajar con un nuevo proyecto cuando quede del siguiente modo.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/4-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Ahora un repaso a lo bsico de como crear un proyecto en Eclipse, consulta el tutorial de crear nuestro primer
pyoyecto en Eclipse (https://jarroba.com/espacio-de-trabajo-para-guardar-los-proyectos-que-creemos-en-eclipse/) si hay
dudas para crear un nuevo proyecto. Llamaremos al nuevo proyecto, por ejemplo, proyecto_coche. Luego, nos pareci
bien crear dentro un par de paquetes panel_de_conductor -que se encargar de comunicarse con el conductor- y
piezas_internas -que ser el resto de componentes del coche que no toca el conductor directamente, como el motor,
entre otros. Estos paquetes nos ha parecido bien que fueran estos para clasificar, pero cada uno puede poner los
paquetes que le interesen, cuantos menos mejor, pero que est clasificado -para programas pequeos, con un paquete
y una clase nos sobra, pero aqu para que sea didctico crearemos varios paquetes y varias clases.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/5-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Que se traducira en Eclipse en (lo dicho, si no sabes como se han hecho estos pasos, repasa el tutorial anterior
(https://jarroba.com/espacio-de-trabajo-para-guardar-los-proyectos-que-creemos-en-eclipse/)):
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/6-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Ya tenemos los paquetes, ahora hay que aadirle las clases. Lo que tenemos que conseguir con nuestro
programa es que tenga una parte de cdigo que sirva para que empiece y de ah en adelante sentencia a sentencia que
vaya ejecutando.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/7-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Se nos ha ocurrido que sera interesante que la clase que se encargara de empezar con el programa est en el
paquete del conductor, ya que es el que pone la llave en el coche y al hacer contacto el coche arranca. Por tanto, en el
paquete panel_de_conductor crearemos una clase que llamaremos Arranque y en el paquete piezas_internas
crearemos otra clase llamada Motor (la creacin de estas dos clases se deja como repaso del anterior tutorial
(https://jarroba.com/espacio-de-trabajo-para-guardar-los-proyectos-que-creemos-en-eclipse/)).
Empezaremos por las piezas del coche. Por tanto, empezaremos por el motor. Para abrir la clase a editar o
pulsamos doble clic en la clase dentro del paquete, o pulsamos en la pestaa de Motor.java en caso de que est
abierta. De cualquiera de las dos maneras iremos a parar al lugar donde tenemos que editar la clase Motor. Vemos en la
siguiente imagen, sealado en un cuadro en mbar, donde tenemos que introducir el cdigo que har que el motor
funcione, porque de momento es una carcasa vaca.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/8-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Ahora pensemos que hace un motor: convierte algo en movimiento. Por tanto, un motor tiene movimiento.
Tenemos que representar ese movimiento en nuestra clase Motor, para ello vamos a usar una variable.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Tipos de datos para una variable
Una variable sirve para guardar cualquier tipo de dato, como un nmero, un texto, etc. Hay que entender que
estamos trabajando con un ordenador, y que tiene tipos de datos simples -o primitivos- que suelen ser los ms
comunes:
int Guarda un nmero cualquiera positivo o negativo como 365 o -19, pero sin decimales. Muy utilizado, por
ejemplo, para contar cosas
double Guarda un nmero cualquiera positivo o negativo como 365.3434 o -19.434, con decimales, la coma es
un punto. Utilizado, por ejemplo, en el resultado de una divisin
boolean Guarda True -verdadero- o False -falso. Utilizado, por ejemplo, para activar o desactivar algo
String Guarda un texto que queramos entre comillas, por ejemplo: rase una vez en un lugar de la Mancha
Se tiende a utilizar otros tipos de datos simples pero no los hemos puesto por una razn: una cosa que no hay
que hacer cuando se programa es aprenderse las cosas de memoria. Las cosas se buscan cuando hay que usarlas.
En este caso se han explicado estas por o bien las vamos a usar en este ejemplo, o se usan muy a menudo y te las
terminars aprendiendo.
Se puede decir que estas variables son las palabras de la programacin que ms se usan, aunque existen
otras, que si tienes curiosidad puedes buscarlas muy fcilmente en internet escribiendo en un buscador: tipos de
datos de Java.
Para almacenar un valor que represente al movimiento Qu tipo de variable sera recomendable usar de las
vistas en el cuadro anterior? Obviamente, tendr que ser un nmero: int o double. Como lo representaremos en
unidades enteras, pues escogemos int.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Declarar un variable
Recordamos como en el colegio nos daban en clase de matemticas que una variable X (ojo a lo de variable)
era igual a un nmero, como por ejemplo: X=5, donde X vale 5. La idea es idntica, aunque en el caso del colegio, las
variables podan ser igualadas a cualquier tipo de nmero (ojo a lo de tipo), pero a qu no de texto? Sera como
decir: X=Cinco. Como vimos en el anterior cuadro de los tipos de una variable, podra tener el tipo String y contener
la variable texto. Pues bien, esto hay que indicrselo a Java, y decirle que tipo de dato va a contener nuestra variable.
Para declarar una variable en Java se sigue el siguiente esquema (toda sentencia de Java lleva punto y coma
al final):
(https://jarroba.com/wp-content/uploads/2012/04/9-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Los dos cuadros morados es lo mismo que la manera de declarar que la variable X solo va a contener, por
ejemplo enteros, la flecha es el igual, y el cuadro verde el tipo de dato que va a contener, por ejemplo 5. As, se
declarara en Java:
(https://jarroba.com/wp-content/uploads/2012/04/10-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
int X = 5;
Entendido esto, veamos un ejemplo de declaracin para cada tipo de dato del cuadro anterior.
Uso de cookies
Nuestro cdigo de la clase motor tendr que quedar como sigue (tanto la palabra private como public lo veremos un
(http://jarroba.com/faq/)
Seguramente en Eclipse te salga la variable subrayada de amarillo, ni caso. Esto es un a advertencia lo vers
como Warning en ingls. Te esta avisando que no ests usando esa variable, y es as, est sola y nadie la usa.
Hemos puesto que la velocidad de rotacin del motor es cero, porque no hay nada que lo mueva, est en
reposo. Esta variable marcar el estado de la velocidad de motor antes y despus de funcionar el motor.
Continuamos con el motor como una carcasa. Necesitamos algo que est dentro. El pistn del que hablamos
antes estara bien. Qu sabemos del pistn? Sabemos que para funcionar requiere algo de gasolina y algo de
oxgeno. Y que devuelve una fuerza para que el coche se mueva y dixido de carbono, como solo nos interesa lo que
devuelve para que funcione, despreciaremos el dixido de carbono.
El pistn ser por tanto un mtodo, lo que quiere decir que ser una pieza del motor.
(https://jarroba.com/wp-content/uploads/2012/04/11-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
De este modo, tenemos que entran unos mililitros de gasolina y de oxgeno, que estos que entren tienen que ser
enteros. Adems, cuando el pistn funcione, el pistn devolver una fuerza que ser otro entero. Cmo hace esto?
Sigamos.
Escribir para el mtodo como lo indicamos la imagen de encima est bien, pero siempre hay que escribir delante
Uso de cookies
del mtodo el nivel de visibilidad.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Nivel de visibilidad
Los mtodos y las clases siempre deben de tener antepuesta una palabra que indica el nivel de visibilidad. En
las variables no se pone siempre.
Los niveles de visibilidad son tres (si nunca has visto esto, te recomiendo que solo leas public y private, no
hagas ni caso a protected, pues hay que tener algo ms de base, pero llegaremos a ello en posteriores tutoriales):
public Pblico. Indica que otras clases curiosas que si quieren pueden Clases: normalmente las
usarlo Es pblico! Si no se pone nada delante de una clase, mtodo clases son siempre pblicas.
o variable, se considera pblico. Salvo si es una variable dentro de Queremos que una clase sea
un mtodo (se llama variable local), que ser privado para todos vista por otra Mtodos: Si
salvo para el mtodo donde est queremos que otras clases
puedan ver el mtodo
Variables: Si queremos que
otras clases puedan ver la
variable
private Privado. Indica a otras clases curiosas que NO pueden usar esto, Clases: NO se usa en las
solo puede usarlo la clase en donde est clases, pues una clase privada
no tendra sentido. No podra
usarla ni siquiera Java!
Mtodos: Si queremos que
otras clases NO puedan ver el
mtodo Variables: Si queremos
que otras clases NO puedan
ver la variable
protected Protegido (se usa solo en herencia; es un tipo de visibilidad Clases: Tiene sentido cuando
avanzada, si no quieres perder el tiempo por ahora pasa de esta y un padre tiene una clase
vuelve cuando hayas aprendido algo de herencia en posteriores interna, para que pueda ser
tutoriales, est aqu puesta para que estn todos los niveles de usada por las clases hijas
visibilidad juntos) Indica a otras clases curiosas que NO podrn Mtodos: Si queremos que solo
usarlo si no son clases hijas del padre que tiene algo protegido puedan ver el mtodo las
(como analoga: el padre protege algo para que exclusivamente lo clases hijas Variables: Si
puedan usar sus hijos). Podrn usarlo la misma clase donde est o queremos que solo puedan ver
una clase hija la variable las clases hijas
Por tanto, queremos que el pistn solo pueda ser usado por el Motor, Para qu vamos a dejar que lo toque otra
cosa o el conductor? Para qu lo rompa?
Una cosa que nos hemos dejado en el tintero es la visibilidad de la primera variable que hemos creado
Uso de cookies
velocidad_de_rotacion_del_motor, como es un estado interno del motor, es solo del motor, por tanto, tambin privado.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
Escribimos nuestro cdigo para que quede de la siguiente forma:
ACEPTAR
package piezas_internas;
Eclipse te habr subrayado en amarillo el mtodo. Te est diciendo que no estamos usando el pistn en ningn
lado, y es cierto No? El motor tiene dentro el pistn pero no lo usa en ningn lado.
Hemos escrito una variable interna del mtodo que se llama fuerza_del_piston, que servir para algo parecido a
lo que hace la variable velocidad_de_rotacion_del_motor. Ojo cuidao! Fijmonos en los corchetes que contienen a lo
que hay en el mtodo, la variable fuerza_del_piston solo se usar en el interior de ese mtodo. Sin embargo, la variable
velocidad_de_rotacion_del_motor se podr usar dentro de este mtodo o en cualquiera de la clase (Pero si es privado,
Cmo se va a usar?, si te haces esta pregunta an no te has enterado bien, estamos dentro de la clase motor, es
privado para los que estn fuera; piensa en un motor fsico de un coche cuando abres el cap, est accesible para ti el
pistn? No Y la velocidad de rotacin del motor? S, pero a travs de la correa de transmisin, pero cuando se genera
en un primer momento dentro del motor no; an no hemos llegado a la salida del motor; puede que te aclare ms lo de
privado y pblico cuando usemos el motor, que es realmente donde se ve o no).
Otra cosa, fuerza_del_piston no hace falta ponerle nada delante para la visibilidad, porque es una variable local,
y todo lo que est dentro de un mtodo es privado y solo para ese mtodo. Si tienes un pistn en la mano, todo lo que
tenga dentro a qu no es accesible de ninguna manera? Rompindolo si acaso, pero deja de funcionar, y al igual que
en el cdigo, si est roto no funciona.
Continuemos ponindole lgica y funcionamiento al pistn (esto es, en el gif animado del pistn el paso 2 y 3).
Supongamos lo siguiente: el pistn solo resiste si le entran menos de 30 mililitros de gasolina, sino explota. El
funcionamiento va a ser muy simple, se va a multiplicar la cantidad de oxgenos por la de gasolina y lo que d es la
fuerza. Analicemos las dos frases anteriores:
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
(https://jarroba.com/wp-content/uploads/2012/04/12-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Estamos tratando con una condicional en toda regla. La conversin a Java sera:
(https://jarroba.com/wp-content/uploads/2012/04/13-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Como no bamos a provocar un error en el programa al ser mayor o igual que 30, hemos optado por mostrar por
la consola de Eclipse un mensaje simblico de la explosin.
package piezas_internas;
if (mililitros_de_gasolina<30){
fuerza_del_piston = mililitros_de_gasolina * mililitros_de_oxigeno;
}else{
System.out.println("El pistn ha sido demasiado cargado de gasolina y ha explotad
o!");
}
return fuerza_del_piston;
}
De esta manera, si la gasolina es menor que 30 lo que pasa es que obtenemos una fuerza del pistn que
cuando llega el cdigo a return, se devolver fuera del mtodo la cantidad a quien lo pida (si por ejemplo, la gasolina es
3 y el oxgeno 5, como gasolina<30 entonces la fuerza del pistn es 35 que es 15).
Ahora vamos conectar los circuitos del motor al pistn. Para ello tenemos que crear en la clase otro mtodo,
pero este mtodo es especial, su visibilidad es siempre pblica, nunca devuelve nada y se llama igual que la clase. Esto
comnmente se llama constructor y no mtodo, ya que se ejecuta en el momento justo en el que se usa a la clase por
primera vez.
Para este caso crearemos el constructor con una entrada para la gasolina (imagnate el motor fsico con un tubo
de entrada para la gasolina), el aire es el ambiental que entra por el respiradero del motor y supongamos que a cada
pistn le entra 2 mililitros de oxgeno. Como el pistn devuelve la fuerza que ha obtenido, y en este caso es toda la que
se transmite como velocidad de rotacin al motor tendremos que:
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
public Motor (int mililitros_de_gasolina){ de cookies (http://jarroba.com/faq/)
if (mililitros_de_gasolina<capacidad_maxima_en_mililitros_de_gasolina_para_un_piston){
fuerza_del_piston = mililitros_de_gasolina * mililitros_de_oxigeno;
}else{
System.out.println("El pistn ha sido demasiado cargado de gasolina y ha explotad
o!");
}
return fuerza_del_piston;
}
Tenemos el arranque el estado del motor (velocidad_de_rotacin_del_motor), tenemos el arranque del motor
(Constructor), y tenemos el funcionamiento interno del motor (pistn). Si nos imaginamos el motor, nos queda donde se
engancha la correa de transmisin, es decir la salida del motor.
Como repaso crearemos el mtodo de salida de datos, ya tendramos que saber hacer esto con lo explicado
anteriormente. Creamos un nuevo mtodo, muy sencillo, no tiene entradas, solo la salida que ser la velocidad de
rotacin del motor, y como va a la correa de transmisin, es pblico para que lo puedan usar otras piezas (clases).
Por norma entre los programadores, un mtodo que devuelve algo le anteponemos get (quiere decir dame) y
uno que mete algn valor en la clase se antepone set. En este caso no hay set, pues de obtener los datos se
encarga el constructor de la clase.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
package piezas_internas;
if (mililitros_de_gasolina<capacidad_maxima_en_mililitros_de_gasolina_para_un_piston){
fuerza_del_piston = mililitros_de_gasolina * mililitros_de_oxigeno;
}else{
System.out.println("El pistn ha sido demasiado cargado de gasolina y ha explotad
o!");
}
return fuerza_del_piston;
}
(https://jarroba.com/wp-content/uploads/2012/04/14-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
(http://jarroba.com/faq/)
Para ello nos vamos a editar la clase Arranque. En esta aadimos el mtodo de arranque del programa main.
ACEPTAR
package panel_del_conductor;
Para la clase que arranca el programa, cuando pulsemos en New/Class, la ventana emergente podemos
marcar la casilla public static void main(String[] args).
(https://jarroba.com/wp-content/uploads/2012/04/15-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Conseguimos que Eclipse nos ahorre parte del trabajo. Si ests pensando Si Eclipse me hace el trabajo no
aprendo!, es verdad, pero en programacin tampoco hay que memorizar cdigo, para eso estn la documentacin
que veremos ms adelante. Por tanto, si sabemos cuando pulsar esta casilla para que Eclipse lo haga solo -que
tampoco aade tanto cdigo como vers al pulsar Finish- ya ser algo bien aprendido. Pues estamos aprendiendo
no solo a programar en Java, sino a usar un IDE y un IDE son herramientas, y esta es una que nos facilita un poco
la vida.
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/16-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Ha aadido muchas cosas raras que de momento no explicaremos -las dejamos para un poco ms adelante.
Vamos a borrar todo lo que de momento nos sobra hasta dejarlo como sigue:
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/17-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Mucho mejor no? Lo mismo que en el anterior tutorial. Ahora solo hace falta rellenar.
Cuando aprendamos en un futuro prximo, veremos que lo que hemos borrado tambin es til.
Vamos a usar el motor al arrancar. Cmo hacemos esto? Fcil. De la misma manera que creamos la
declaracin de una variable, creamos una para el motor dentro de la clase main. Recuerdas lo de int X = 5? Pues
igual, pero el tipo no ser ninguno de los simples, sino uno compuesto que hemos creado nosotros, ser Motor, es decir,
la clase Motor har de tipo de dato.
Motor mi_motor =
Aqu tenemos una cosa que se llama mi_motor, sea un X, que solo admite algo de Motor, pero que no apunta a
nada. Y qu valor guardamos?, pues un motor que tenemos que crear nuevo, y como el constructor que hicimos
Uso de cookies
tenemos que mandarle la cantidad de gasolina, le ponemos por ejemplo 20.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Motor mi_motor = new Motor (20);
Aqu tenemos que tener clara la diferencia entre Motor que es la clase y mi_motor que es el objeto (sin darte
cuenta te hemos metido en el fabuloso mundo de los objetos en un solo tutorial de programacin). Una clase es por as
decirlo el molde para moldear los objetos, y un objeto es un objeto valga la redundancia, si es que es blanco y en botella
si se entiende. Motor es el molde y mi_motor es el objeto creado con el molde. Aadamos esta lnea al cdigo para ver
que ocurre:
package panel_del_conductor;
Eclipse se queja subrayando en rojo las palabras Motor. Tranquilo, no nos hemos equivocado. Si colocamos el
cursor sobre nuestro problema, Eclipse nos dir que podemos hacer. En este caso la primera opcin es la ideal, ya que
hay que decirle a Java que esta clase Arranque va a usar otra clase llamada Motor. Pulsamos por tanto en la que pone
Import Motor (piezas_internas) y solucionado.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/19-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Veremos como Eclipse automticamente nos ha aadido una lnea de importacin que se llama:
import piezas_internas.Motor;
Continuamos, que ya queda nada y menos para probar lo que hemos hecho.
Debajo de la creacin del objeto mi_motor creamos una variable de tipo entero que se llame velocidad_coche,
que tendr el valor que le transmita la correa de transmisin desde el mi_motor (imaginemos que tenemos el motor
fsico y queremos atarle la correa de transmisin a algn lado). Para llamar a un mtodo del objeto escribimos el nombre
del objeto y despus un punto. Eclipse seguro que te ha puesto un montn de recomendaciones, de las cuales
podemos ver una que hicimos nosotros que se llama: get_velocidad_de_rotacion_del_motor():int Motor (seguro que
no hace falta explicar mucho de esta lnea, despus de los dos puntos finales aparece int que es el valor que nos
devuelve, que ser la velocidad de rotacin del motor; y seguido de un guion aparece Motor, que es de la clase que
Eclipse est sacando este mtodo para mostrrtelo). Como curiosidad y si no entendiste lo de la visibilidad, es el nico
mtodo que declaramos como pblico anteriormente en la clase Motor -que no es constructor- que se ve en esta lista; el
privado no aparece (prueba a ir a la clase Motor para cambiar Uso de cookies private por public, guarda y luego vuelve a la clase
Arranque para volver a ver las sugerencias de Eclipse, seguro que ahora te aparece el pblico).
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/18-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Para terminar, debajo de esta lnea escribimos lo siguiente para que nos muestre el resultado por consola:
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
package panel_del_conductor;
import piezas_internas.Motor;
Pulsamos en ejecutar nuestro cdigo (crculo verde con la flecha, ver anterior (https://jarroba.com/espacio-de-
trabajo-para-guardar-los-proyectos-que-creemos-en-eclipse/)tutorial (https://jarroba.com/espacio-de-trabajo-para-
guardar-los-proyectos-que-creemos-en-eclipse/) si no recordamos).
Vemos como se nos muestra por pantalla el resultado, que es 40 (20 de gasolina por 2 de oxgeno).
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
Nos acordamos que pusimos una condicional. Probemos a modificar el 20 del motor por un nmero mayor o
(http://jarroba.com/faq/)
igual que treinta, por ejemplo 100. ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/21-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Correctamente si le pasamos al motor 100 de gasolina, el pistn explota. Y como ha explotado, no se habr
hecho ningn clculo de multiplicacin y por tanto, nos devolver el valor inicial de la velocidad que era 0.
Repasemos un poco el cdigo de lo que ha hecho para dar este resultado. Fjate en la siguiente imagen
comenzando con dar la orden al ordenador para que se ejecute y seguimos las flechas rojas.
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
(https://jarroba.com/wp-content/uploads/2012/04/22-Mucho-Java-en-un-solo-tutorial-www.jarroba.com_.png)
Todo se va haciendo secuencialmente, lnea a lnea empezando por el mtodo main, pero cuando se encuentra
una llamada a la clase Motor saltamos al motor y al acabar continuamos. Las flechas rojas indican las llamadas a cada
mtodo y la devolucin de datos de los mismos.
Si has llegado hasta aqu es que has acabado el tutorial, con lo que enhorabuena! Habrs aprendido un montn
de cosas de Java y Eclipse:
(htt
(htt
(htt (htt
(http://jarroba.com/faq/)
mmi
ACEPTAR
11/02/2017 a las 18:16 (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-
de-oro/#comment-120561) es%
29&concatenar textos (Strings).
Como bien ha respondido Luis es para
sour
Si por ejemplo, la variable tiene el valor 70:
ce=j
int velocidad_coche = 70;
arro
ba.c
Entonces, cuando el programa llegue a la lnea:
om)
System.out.println(La velocidad del coche es +velocidad_coche+ km/h);
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=120561#respond)
Sergio dice:
Brutal el tutorial recien empiezo a estudiar un grado superior en pocos dias cual es el siguiente que me
recomiendas? cual es la docuemntacion para no aprendernos el codigo de memoria xD
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=61484#respond)
Gracias Sergio
(http://jarroba.com/faq/)
ACEPTAR
Lo siguiente que te recomiendo es que aprendas son estructuras de datos (Arrays,
List http://jarroba.com/arraylist-en-java-ejemplos/ (http://jarroba.com/arraylist-en-java-ejemplos/),
Maps http://jarroba.com/map-en-java-con-ejemplos/ (http://jarroba.com/map-en-java-con-ejemplos/)), que
son muy importantes para cualquier cosa que hagas (programas de gestin de datos, videojuegos,
aplicaciones de cualquier cosa etc); as como herencia (http://jarroba.com/herencia-en-la-programacion-
orientada-a-objetos-ejemplo-en-java/ (http://jarroba.com/herencia-en-la-programacion-orientada-a-objetos-
ejemplo-en-java/)) y polimorfismo que es muy til (http://jarroba.com/polimorfismo-en-java-parte-i-con-
ejemplos/ (http://jarroba.com/polimorfismo-en-java-parte-i-con-ejemplos/)). Luego lo que necesites, puedes
echar un vistazo a los tutoriales que tenemos de Java: http://jarroba.com/?s=java (http://jarroba.com/?
s=java)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=67241#respond)
Felicitaciones por el tutorial, es muy bueno! No me imagino cunto esfuerzo y tiempo le dedicaste, pero en
serio se agradece. =)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=57066#respond)
Increible manera de explicar, muchas GRACIAS, hace amar la programacin en cualquier lenguaje.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=51809#respond)
Samuel dice:
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=30367#respond)
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
Ethan (http://www.ism.com.pe) dice:
(http://jarroba.com/faq/)
ACEPTAR
06/01/2016 a las 16:49 (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-
oro/#comment-30334)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=30334#respond)
Desde colombia, Un abrazo, te cuento el 21 de oct de 2015, me inscribi en un curso online y sinceramente
hoy e aprendido mas que en mes y medio que llevo del curso, espero me puedas recomedar otro ejemplo de
metodos, constructor etc, para tener mas claros estas bases, te comento que debo de crear un programa que le
solicite cedula, nombre, edad y estos datos los podamos, almacenar, consultar y despues borrar segun la
informacion q digite el usuario, si me puedes ayudar recomendandote un video o pagina tuya te agradeceria
muchisimo.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=28766#respond)
Un abrazo muy grande para t tambin y muchos nimos con los programas a desarrollar
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=28836#respond)
Esteban dice:
hola, fantastica tu explicacion y muy practica. Soy un ingeniero de pruebas de software iniciandose en
selenium webdriver y me ha servido bastante esto Usopara entender algunos conceptos.. te doy un 10
de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
(http://jarroba.com/faq/)
replytocom=23490#respond) ACEPTAR
Ramn [Admin Jarroba] dice:
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=23609#respond)
Eugenia dice:
Me estoy iniciando en el mundo del java y la verdad que me estais ayudando muchsimo.
Cual sera el siguente tutorial que me recomendarias para seguir aprendiendo java?
De nuevo os felicito por toda la sabidura que compartis, hay muucha gente que le cuesta compartir lo que
sabe, o no quiere hacerlo.
un saludo!
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=22685#respond)
Hola Eugenia. Este artculo nos centramos en explicar las bases de Java, luego Java es muy amplio,
pero poco a poco vas asimilando todo. Por ello depende un poco lo que necesites aprender (todo lo que
tenemos de java en: http://jarroba.com/?s=java (http://jarroba.com/?s=java)). Algunos de los que te
recomiendo para ir adquiriendo base son:
Luego tenemos muchos ms que dependen de las necesidades y lo que quieras aprender.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=22756#respond)
Wao! Increible, entr a esta pagina de casualidad mientras googleaba y me he encontrado con una mina
de oro. He entendido a la perfeccin este tema, se lo pas a mi hermano quin recin est aprendiendo Java
desde ayer y lo que hubiera tomado semanas o incluso un par de meses, ya lo sabe, solo queda practicar para
perfeccionar.
Bill Flores.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=20267#respond)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=20268#respond)
(http://jarroba.com/faq/)
ACEPTAR
Desde Santiago de Chile
Estimados muchas gracias por tan loable ayuda que nos han brindado con este tutorial, tan claro, tan difano, tan
fcil de aprender y de entender, lo que me era muy complicado de comprender, hoy con la ayuda de ustedes se
han solucionado muchas dudas , y ya se va perdiendo el temor a esta herramienta que la miraba desde lejos,
porque no tena esa visin clara de los manejos y llamados a mtodos y menos la creacin de objetos, en fin muy
agradecidos por su gran manejo para explicar lo difcil como simple
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=12438#respond)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=12512#respond)
Mariana dice:
El tutorial estuvo excelente y algunas cosas que no sabia las aprendi o las termine de entender.
Java es uno de varios lenguajes de programacion pero la base es la logica.
felicidades
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=10553#respond)
Agustn dice:
Si hubiese encontrado esto cuando empec a estudiar programacin en Java me hubiese ahorrado mucho
tiempo Excelente artculo! Principalmente por su sencillez.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=10552#respond) Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
(http://jarroba.com/faq/)
ACEPTAR
Lucas dice:
Excelente pagina! en mi inicio en Java tuve que realizar una operacin mediante hilos y tuve que aprender
java desde cero en 1 semana. Gracias a ustedes lo logre, ahora estoy por arrancar a programar en una empresa y
su pagina la voy a recomendar por la calidad de informacin que comparten, no solo por su legibilidad, si no que
sabes explicar, los felicito! Saludos desde Argentina
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=260#respond)
Gracias Lucas!!!
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=261#respond)
como trabajo debo realizar con clases el control del mundial,. me explico:
la verdad estoy un poco perdido y no se como lograr hacerlo sin tener que convertir el programa en
bastantes lineas de cdigo ya que un compaero lo lleva casi terminado pero tiene mas de 1500 lineas de cdigo
me trato de explicar pero me dejo mas perdido
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=258#respond) Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
Hola John,
no tenemos tutoriales sobre interfaces grficas. De cualquier manera, lo que necesitas est todo aqu, en la
documentacin oficial de GUI de Java: http://docs.oracle.com/javase/tutorial/uiswing/
(http://docs.oracle.com/javase/tutorial/uiswing/)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=259#respond)
Es curioso, pero al igual que Chus, yo tambin estoy haciendo Desarrollo de aplicaciones multiplataforma)
y estoy aqu por casualidad, porque buscaba unos apuntes fciles para repasar, pero es increble lo bien hecho
que est este manual porque est mejor explicado que en clase, y viene explicado temario complejo (lo que le
llamo yo a objetos, estructura y visibilidad) y quera felicitaros cuanto menos por esta explicacin milagrosa.
Porque habeis explicado lo mismo que en mi clase de programacin de 6 meses en 10 entretenidos minutos de
lectura.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=256#respond)
Hemos pasado por eso, de ah que queramos cambiar un poco la forma de ver la programacin: ms
accin y pasin
Te animo a continuar con la multi-plataforma pues es algo con mucho futuro. Si tienes curiosidad
tenemos tutoriales de Android, de iOs y de Web.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=257#respond)
Chus dice:
ACEPTAR
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=254#respond)
Nos alegra que te guste Estamos trabajando muy duro en proporcionar lo mejor a la comunidad.
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=255#respond)
arcturus dice:
Excelente explicacin, al fin entiendo como llamar a un metodo de un objeto, su explicacin es muy buena,
les felicito
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=253#respond)
Sandwarrior dice:
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=251#respond)
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=252#respond)
Uso de cookies
Richard [Admin Jarroba] (http://www.jarroba.com) dice:
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si contina navegando est dando su consentimiento para la aceptacin de las mencionadas cookies y la aceptacin de nuestra poltica
de cookies (http://jarroba.com/faq/)
oro/#comment-250) ACEPTAR
Es un coche para ir por ciudad
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=250#respond)
Jose dice:
Responder (https://jarroba.com/mucho-java-en-un-sencillo-tutorial-aqui-los-dummies-se-hacen-de-oro/?
replytocom=249#respond)
Deja un comentario
Tu direccin de correo electrnico no ser publicada. Los campos obligatorios estn marcados con *
Comentario
Nombre *
Correo electrnico *
Web
Publicar comentario
(http://jarroba.com/faq/)
ACEPTAR