Saltar navegación

Java Básico 1 - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 26 de septiembre de 2023 por Stefano C.

29 visualizaciones

Descargar la transcripción

Vale, estoy grabando esta clase, por lo tanto, si decís algo, me estáis autorizando a que vuestra voz esté grabada en este vídeo. 00:00:00
Si por si acaso no queréis que vuestra voz sea grabada, me levantáis la mano, me decís que no queréis que se oiga tu voz, paro la registración y me hacéis vuestra pregunta, ¿vale? 00:00:14
Pero que sepáis que todo lo que estamos diciendo ahora está siendo grabado 00:00:25
¿Sí? 00:00:31
Vale, entonces, hoy vamos a empezar con Java básico 00:00:32
¿Sí? 00:00:35
Lo que vamos a ver al principio es, si os acordáis, la última vez, el viernes, no, el lunes 00:00:37
Lo que vimos es, hicimos un programita utilizando Eclipse 00:00:42
¿Sí? 00:00:47
Entonces, nosotros ya hemos hecho una prueba de escribir un programa, de escribir algún código, cosas así 00:00:48
Y hemos visto algunas sentencias, algunas palabras claves del lenguaje 00:00:56
Algo hemos visto, ¿vale? 00:01:02
Ahora, hacemos un paso atrás de abstracción 00:01:05
Pensamos un poquito de cuál es la estructura básica de un lenguaje, de un programa 00:01:08
Y luego volvemos a ver 00:01:13
Cómo se relaciona 00:01:16
Lo que ya hemos hecho 00:01:18
Con esta parte de aquí 00:01:19
A partir de ahí 00:01:21
Empezaremos a ver 00:01:23
Algunas características del lenguaje 00:01:25
Cómo son las variables 00:01:28
Cómo son los métodos 00:01:29
Y empezaremos a hacer pequeñas pruebas 00:01:31
Sobre esto 00:01:34
Tened en cuenta que 00:01:35
Como todas las cosas 00:01:36
A principio esto es muy muy muy sencillo 00:01:38
¿Vale? 00:01:42
Entonces vosotros estáis escuchando 00:01:42
Y decís, esto es muy burrido 00:01:44
Esto está súper sencillo 00:01:45
Estos acolletes 00:01:48
Porque vamos, es fenomenal 00:01:50
Hasta que llega un momento 00:01:52
En que está el clásico clac 00:01:54
De, oye, mira, esto no lo he entendido 00:01:55
Empezáis a ir atrás en los apuntes 00:01:57
Y os dais cuenta que no era tan fácil 00:02:01
Como parecía 00:02:03
Y que las cosas se van complicando 00:02:04
Mi consejo 00:02:06
Dos, mis consejos, dos 00:02:07
Primero 00:02:09
Prestad atención, ¿vale? 00:02:10
Seguid lo que estamos haciendo 00:02:13
Porque vamos añadiendo constantemente cosas 00:02:15
Y segundo, no perdáis tiempo en casa 00:02:17
A partir de esta tarde, lo que hemos visto 00:02:21
Pues lo repasáis, hasta si es súper sencillo 00:02:24
Si es súper sencillo, tardaréis una hora en repasarlo 00:02:27
Ningún problema, ¿vale? 00:02:30
Cuando las cosas se harán más complejas 00:02:32
Haber tenido la base bien trabajada 00:02:34
y a verla de pasada varias veces 00:02:38
os ayudará a entender las cosas más difíciles 00:02:40
no os descolguéis 00:02:44
del ritmo 00:02:46
es decir, nosotros iremos 00:02:47
a una cierta velocidad 00:02:50
si de repente no estáis entendiendo lo que digo 00:02:51
no esperéis 00:02:54
dos semanas 00:02:56
antes de decirme, oye profe, mira 00:02:58
no he entendido esta cosa 00:03:00
que es una variable 00:03:02
decídmelo el mismo día 00:03:03
decídmelo el día después 00:03:05
Si vosotros hoy hacéis una cosa 00:03:07
Pensáis que la habéis entendida 00:03:09
Vais a casa, la leéis 00:03:11
Y veis que no la habéis entendida bien 00:03:12
El viernes, la próxima vez 00:03:14
Me venís a decir 00:03:17
Oye, mira, que yo he repasado esto 00:03:18
Y esto no lo he entendido 00:03:19
Es para vosotros, no para mí 00:03:20
A mí me da igual 00:03:23
Repasar la misma cosa 00:03:24
O ir seguido adelante 00:03:25
Si vosotros entendéis todo 00:03:27
Si yo voy con un tren 00:03:28
Y llegamos a cosas más difíciles 00:03:29
A final de año 00:03:32
¿Vale? 00:03:33
Pero yo lo que quiero 00:03:34
Es que no pierda mitad de la clase 00:03:35
¿Vale? 00:03:37
Porque las cosas básicas no se han entendido 00:03:39
No tengáis miedo a levantar la mano 00:03:41
Cuando preguntaréis 00:03:44
No he entendido una variable 00:03:45
El 50% de la gente 00:03:47
Está alrededor vuestra 00:03:49
Tampoco lo ha entendido 00:03:50
No os preocupéis 00:03:51
¿Sí? 00:03:52
Vale, vamos a empezar aquí 00:03:56
Entonces 00:03:57
Este de aquí 00:03:58
Es abstractamente 00:04:00
esquema de los 00:04:03
programas que iremos haciendo nosotros 00:04:07
¿vale? nosotros cuando 00:04:09
creamos un nuevo programa 00:04:10
un nuevo 00:04:12
trabajo, un nuevo proyecto 00:04:13
una nueva cosa que vamos a hacer en Java 00:04:16
crearemos un fichero 00:04:18
con un nombre .java 00:04:20
¿vale? el fichero .java 00:04:23
son los archivos fuentes 00:04:25
es importante que 00:04:26
el nombre que doy aquí 00:04:29
por ejemplo en este caso 00:04:31
mi clase, empiece por 00:04:33
mayúscula 00:04:35
es importante que 00:04:35
si no lo hago no funciona, no 00:04:38
si no lo hago funciona igual, pero 00:04:40
en todo el mundo de Java 00:04:42
cuando se crea un archivo de este 00:04:44
estilo, se está creando una clase 00:04:46
veremos más adelante que es la clase 00:04:49
y las clases 00:04:50
tienen nombre que 00:04:53
empiezan por mayúscula 00:04:54
¿vale? esto me permitirá 00:04:57
más adelante ver un nombre 00:04:58
que no sé si es una clase o una variable 00:05:00
O lo que sea, y si empieza por mayúscula 00:05:02
Puedo decir, ah, probablemente es una clase 00:05:05
Si es todo mayúscula, digo 00:05:07
Ah, esta es una constante 00:05:08
Si empieza por minúscula, digo 00:05:10
Ah, esto puede ser un método o una variable 00:05:12
¿Vale? 00:05:14
Y todos lo hacen así, por lo tanto, los dos también 00:05:15
Teniendo en cuenta que 00:05:18
Aquí también, en Java se suele poner 00:05:20
Que si mi nombre 00:05:22
Si el nombre que utilizo tiene varias palabras 00:05:24
Como es este caso, que es mi clase 00:05:27
Lo que se hace es una única palabra 00:05:28
Donde cada una de las palabras 00:05:31
tiene mayúscula, entonces la m 00:05:32
de mi es mayúscula 00:05:34
y la c de clase es mayúscula 00:05:36
si, lo veremos después 00:05:38
mi clase punto java 00:05:40
que es un fichero 00:05:43
es este gris, es el fichero 00:05:44
tiene dentro la clase 00:05:46
mi clase 00:05:48
si esto se llamara gato 00:05:49
punto java, pues aquí 00:05:52
sería public class gato 00:05:54
mayúsculas y minúsculas 00:05:56
cuentan en java 00:05:59
Java es case sensitive 00:06:00
O sea, hace caso a las mayúsculas y minúsculas 00:06:03
No es lo mismo escribir mi clase así 00:06:06
Que escribir mi clase con la C minúscula 00:06:09
No existe mi clase con la C minúscula 00:06:11
¿Está claro? 00:06:13
Vale 00:06:15
Luego, dentro de una clase normalmente 00:06:16
Por un buen rato 00:06:19
Nuestra estructura será 00:06:20
Una lista de atributos 00:06:22
Seguido de una lista de métodos 00:06:25
¿Vale? 00:06:29
¿Qué son los atributos y los métodos? 00:06:29
Lo entenderemos mejor cuando lleguemos a la programación en el tataobjetos 00:06:32
Pero para entendernos 00:06:36
Los atributos son las características 00:06:38
Los atributos, los elementos, los datos importantes para esta clase 00:06:41
¿Vale? 00:06:49
Si esta es la clase alumno 00:06:49
¿Cuáles pueden ser sus atributos? 00:06:51
Si la clase fuera alumno 00:07:00
alumno, vale 00:07:03
si en mi clase, es que en mi clase se refiere a este tipo de cosas 00:07:04
es genérico 00:07:08
pero pongamos la clase alumno 00:07:09
vosotros queréis modelizar a un alumno 00:07:11
¿cuáles son los atributos, las características 00:07:13
que pueden servirme 00:07:15
en mi programa para modelizar 00:07:17
a un alumno? 00:07:20
su nombre, apellido 00:07:21
DNI 00:07:24
dirección 00:07:26
donde vive 00:07:29
sus notas 00:07:30
no lo sé, vale 00:07:33
Pero la información que me servirá para el alumno 00:07:34
Estará aquí, dos datos 00:07:38
¿Vale? 00:07:39
Si esto fuera la clase triángulo 00:07:40
¿Aquí qué podría poner? 00:07:42
Lado 1, lado 2, lado 3 00:07:45
Por ejemplo 00:07:47
¿Vale? 00:07:48
Y a lo mejor ángulo 1, ángulo 2 00:07:49
No lo sé, los ángulos que necesito 00:07:52
No tengo idea 00:07:53
Si esto fuera la clase cuadrado 00:07:54
¿Aquí qué me necesitaría? 00:07:56
Lado 00:08:01
Y con lado ya tengo todo 00:08:01
Lo que tú me digas lado del cuadrado 00:08:03
Pues ya tengo mucha información 00:08:05
¿Vale? 00:08:06
Y esta es la información, los datos 00:08:08
Relacionado con este objeto 00:08:10
Que estoy trabajando 00:08:12
Pero ahora no estamos trabajando objeto 00:08:13
Pero todas las variables que voy a utilizar 00:08:15
Las tendré por aquí, en mi clase 00:08:17
Los métodos 00:08:20
Son como se llaman en Java 00:08:23
Las funciones 00:08:26
O sea, lo que puedo hacer 00:08:27
Con estos métodos 00:08:29
Con estos datos 00:08:31
Yo tengo los datos, los atributos 00:08:32
Allí, rellenados 00:08:34
De alguna forma, ya veremos como se hace 00:08:36
¿Qué puedo hacer con estos datos? 00:08:38
Por ejemplo 00:08:41
¿Qué puedo hacer en la clase alumno? 00:08:42
Por ejemplo, puedo decir 00:08:44
Preséntate alumno 00:08:45
Entonces habrá un método, preséntate alumno 00:08:47
Que escribirá en pantalla 00:08:50
Hola, me llamo 00:08:51
Y sacará de sus atributos como se llama 00:08:52
Y vivo 00:08:55
Y sacará de sus atributos su dirección 00:08:56
¿Sí? 00:08:59
La clase cuadrado, pues aquí tengo lado y aquí tendré como método calcular área. 00:09:03
¿Qué hará calcular área? 00:09:09
Irá a pillar en los atributos su lado, para saber cuánto es grande, y hará lado al cuadrado. 00:09:10
Si yo busco el otro método, que es el calcular perímetro, 00:09:17
pues lo que hará el cuadrado es ir a buscar cuál es su lado y lo multiplicará por 4. 00:09:21
¿Se entiende más o menos? 00:09:28
Entonces, por ahora no me interesa que sepáis programar orientado a objetos, 00:09:30
Me interesa que la estructura de una clase suele ser así 00:09:34
Defino la clase 00:09:37
Tengo las variables 00:09:39
Tengo los atributos 00:09:41
Tengo las características 00:09:42
Que voy a utilizar en esta clase 00:09:44
Tengo las funciones 00:09:46
Tengo los métodos 00:09:47
Que se utilizan en esta clase 00:09:48
Si paso desde aquí 00:09:51
Desde esta cosa aquí 00:09:58
A algo de código 00:09:59
La estructura 00:10:02
La misma estructura sería algo así 00:10:04
public clase mi clase 00:10:06
esto define que estoy creando 00:10:08
la clase mi clase, nosotros hemos creado 00:10:10
la clase lo, esto podría ser 00:10:12
public clase alumno 00:10:14
public clase cuadrado 00:10:16
y veo que se abre una paréntesis 00:10:17
aquí 00:10:21
aquí 00:10:21
y se cierra al final del todo 00:10:24
todo esto 00:10:26
es mi clase 00:10:27
¿entienden? 00:10:29
dentro 00:10:34
tengo una serie de atributos 00:10:34
¿qué es esta cosa aquí? no lo sé, no lo hemos visto todavía 00:10:36
¿vale? pero aquí tendré 00:10:39
no sé qué atributo 1 00:10:41
no sé qué atributo 2 00:10:43
no sé qué atributo 3 00:10:45
¿vale? nosotros, en el caso del alumno, tendré 00:10:46
string nombre 00:10:49
string dirección 00:10:50
int edad 00:10:52
¿vale? ¿qué es esto string int? todavía no lo sabemos 00:10:54
lo veremos, ¿vale? 00:10:56
pero aquí tendré la definición de lo que necesito 00:10:58
dirección 00:11:01
nombre, edad 00:11:02
lo que sea 00:11:04
y luego empiezan los varios métodos 00:11:05
por ejemplo public void 00:11:08
met uno sería el método uno 00:11:10
para mi podría ser calcula área 00:11:12
entonces public void calcula área 00:11:14
o lo que sea 00:11:16
un método que nosotros conocemos 00:11:17
porque ya lo hemos visto 00:11:20
es esto 00:11:21
el método public static void main 00:11:22
string args 00:11:26
si, os acordáis 00:11:27
es un método especial 00:11:29
que no es un método cualquiera 00:11:31
Pero es el método que me dice 00:11:33
De dónde empieza mi programa 00:11:34
Cuando yo le paso 00:11:37
Este código aquí lo compilo 00:11:39
Se transforma en punto clase 00:11:41
En bytecode, vale, fenomenal 00:11:43
Y a este punto, este punto clase 00:11:45
Se lo paso a la Java Lector Machine 00:11:47
La Java Lector Machine tiene que saber 00:11:49
De dónde empieza 00:11:51
El programa, y si yo no se lo digo 00:11:53
Él me dirá, este programa no se puede empezar 00:11:55
Porque no sé de dónde 00:11:57
¿Cómo le digo si empieza de aquí? 00:11:58
Creando el método main 00:12:01
El método principal 00:12:03
El método main es el punto de acceso a mi trabajo 00:12:04
Y luego desde aquí podré llamar otros métodos 00:12:07
Llamar otra clase 00:12:10
Crear variables 00:12:11
Hacer todo lo que se pueda hacer en una programación 00:12:12
Pero en cada programa tiene que haber un punto de arranque 00:12:14
El método 2 iría aquí 00:12:19
Cuantos métodos quiero 00:12:30
Luego no sabemos declarar métodos 00:12:33
No sabemos declarar variables 00:12:36
Esto es solo muy, muy a alto nivel 00:12:37
Para entender la estructura más o menos 00:12:40
¿Vale? 00:12:42
La que llegaremos a hacer en un mes 00:12:43
De programación o cosas por el estilo 00:12:45
Cuando empezaremos con la clase de objetos 00:12:47
Las haremos así la primera 00:12:49
¿Vale? Es un poquito para empezar por algún lado 00:12:51
¿Dudas? 00:12:54
¿Sí? 00:12:57
00:12:58
Es el punto de acceso 00:12:59
La entrada a mi programa 00:13:12
Si quieres decir 00:13:13
La entrada como 00:13:14
En el sentido de entrada, proceso y salida 00:13:16
De un algoritmo, pues 00:13:19
Por algún lado estará también 00:13:20
¿Vale? Ya lo veremos 00:13:22
Ya veremos como hacemos las entradas, la salida y el proceso 00:13:24
¿Vale? Por ahora nosotros sabemos 00:13:27
Que podemos crear 00:13:29
Varios atributos, podemos crear 00:13:31
Varios métodos, no sabemos como 00:13:33
¿Vale? Y que hay un método especial 00:13:34
Que es el método main, que es el que usaremos 00:13:37
Nosotros al principio, porque mientras 00:13:38
Que no sepamos un poquito de como 00:13:41
van las cosas, no usaremos ni otros 00:13:43
métodos y no tenemos ni siquiera atributos 00:13:44
si piensas en lo que hemos hecho 00:13:46
y ahora lo veremos, no hemos utilizado 00:13:48
atributos, nosotros en 00:13:50
en el programa 00:13:52
que hemos hecho, no hay atributos 00:13:54
hay solo el método mail 00:13:55
este, es otro método 00:13:56
esto sería como este de aquí 00:14:03
¿si? y este de aquí 00:14:05
son los puntitos 00:14:07
y este de aquí es el método mail 00:14:08
por ejemplo 00:14:11
pero tranquilos que 00:14:12
A esto llegaremos 00:14:15
Es solo para que entendáis 00:14:16
Que hay una estructura básica 00:14:18
Lo que si ahora me importa 00:14:20
Es que en mi clase punto java 00:14:22
Va la clase mi clase 00:14:24
No puedo poner en mi clase punto java 00:14:25
Public class gato 00:14:28
Me va a dar un error 00:14:30
Entonces aquí en los apuntes 00:14:31
Os explica cada uno de estos 00:14:38
Elementos 00:14:40
Que son 00:14:42
Entonces empieza con public class mi clase 00:14:43
Que quiere decir esta frase aquí 00:14:46
Esta sentencia 00:14:48
Está diciendo que todo lo que voy a crear aquí 00:14:49
Es la clase mi clase 00:14:52
Es la clase alumno, es la clase triángulo 00:14:54
Es darle un nombre 00:14:56
Este programita que estoy creando 00:14:57
Tiene este significado 00:14:59
En cierto sentido 00:15:02
Estoy modelizando un alumno 00:15:03
Estoy modelizando un triángulo 00:15:04
Estoy modelizando la geometría 00:15:06
Public class y un nombre del programa 00:15:07
Que lo estoy creando yo 00:15:11
Todo lo que está entre el primer 00:15:12
llave, ¿no? esto 00:15:15
y la última llave, o sea, entre esta de aquí 00:15:17
y esta de aquí, es 00:15:19
esta clase que estoy creando 00:15:21
¿sí? entonces la clase 00:15:22
tiene una definición 00:15:25
he definido qué clase es 00:15:27
cómo se llama, y luego un bloque 00:15:29
¿vale? paréntesis hasta 00:15:31
paréntesis, este de aquí, llave hasta llave 00:15:33
se llama un bloque, un bloque de código 00:15:35
¿sí? y en este 00:15:37
bloque lo que haré es 00:15:39
desarrollar esa clase, decir 00:15:41
Que hace esta clase, sus atributos, sus métodos 00:15:43
Lo que sea 00:15:45
¿Sí? 00:15:47
Después están estas definiciones de aquí 00:15:51
Que estas serán variables o constantes 00:15:53
Lo veremos en un futuro 00:15:55
¿Vale? 00:15:57
Son las características propias de la clase 00:15:58
Son lo que define la clase 00:16:01
Un alumno es definido por su nombre, su DNI 00:16:02
Y su dirección 00:16:04
¿Qué sé yo? 00:16:07
Un avión 00:16:08
Está definido por su número 00:16:11
definido por su número de matrícula, la velocidad 00:16:13
máxima, el color exterior 00:16:15
y el número de asientos 00:16:17
aquí voy definiendo 00:16:18
las características 00:16:21
que caracterizan 00:16:23
mi clase 00:16:24
sea todo lo que sea mi clase 00:16:26
cuando yo creo una clase nueva 00:16:28
tendré que estar, tener un poquito de 00:16:31
prestar atención a 00:16:33
definir 00:16:35
las características que necesito 00:16:36
si yo creo una clase alumno 00:16:39
y se me olvida poner nombre 00:16:41
Y luego cuando quiero utilizar esta clase 00:16:42
Tengo que escribir el nombre del alumno 00:16:45
No tengo ese dato 00:16:47
Entonces tendré que volver atrás 00:16:48
Ponerlo otra vez y ver que queda 00:16:50
O sea que hay una parte inicial 00:16:52
En el que tengo que pensar en la clase que quiero hacer 00:16:57
Y intentar poner todos los atributos necesarios para esa clase 00:17:01
Programación no es picar código 00:17:05
Pero es pensar 00:17:09
La parte difícil es pensar antes 00:17:11
¿Qué voy a hacer? 00:17:13
Y luego lo hago 00:17:15
Por ejemplo, en una clase persona 00:17:15
Si yo estuviera haciendo public 00:17:19
Tras persona, ¿qué atributos podría poner? 00:17:21
Pues aquí hace el ejemplo 00:17:24
Nombre y edad 00:17:25
De una persona me interesa su nombre y su edad 00:17:26
Y si la clase fuera 00:17:29
Libro 00:17:31
A lo mejor en una clase libro me interesa 00:17:32
El título del libro, la autor del libro 00:17:35
Y cuántas páginas tiene 00:17:37
Y editorial, y género, y no lo sé 00:17:38
Lo que haga falta 00:17:42
También depende del programa que voy a hacer 00:17:44
Si el programa es una biblioteca 00:17:46
Pues a lo mejor necesitaré algunos datos 00:17:48
Que es una cosa distinta de si el programa es para 00:17:51
Que se yo, para venta de libros en un instituto 00:17:54
O sea, no lo sé 00:18:00
A lo mejor hay datos que en una biblioteca son útiles 00:18:02
Y que en el otro no 00:18:05
Por ejemplo, identificar un propio libro 00:18:07
Una copia concreta del libro 00:18:10
En una biblioteca es útil 00:18:11
Al venderla a los alumnos 00:18:13
A lo mejor no, no lo sé 00:18:15
Digo así para 00:18:16
Hacerme un ejemplo 00:18:17
Inventamos una clase 00:18:24
Nadie 00:18:25
Clase 00:18:34
Perro 00:18:36
¿Qué atributos tiene la clase perro? 00:18:38
¿Abaja? 00:18:42
¿Edad? 00:18:44
¿Nombre de perro? 00:18:47
¿Fanero de perro? 00:18:49
¿Nacionalidad de perro? 00:18:51
Si te interesa, pienso yo para decirte que no. 00:18:53
Depende de qué estás haciendo, por qué usas esta clase de perro. 00:18:57
¿Qué vas a hacer con eso? 00:19:00
Si a lo mejor te necesita la nacionalidad por alguna razón, pues esto te lo aportas. 00:19:02
Otro ejemplo, clase coche. 00:19:08
Marca el coche, modelo, matrícula. 00:19:14
año de producción, que se yo 00:19:19
tened en cuenta, pensad en coche 00:19:25
si yo soy 00:19:26
policía 00:19:31
que hago un 00:19:32
programa que tenga que ver 00:19:34
con un coche, a lo mejor me interesan 00:19:37
cosas como la matrícula 00:19:39
del coche, el color del coche 00:19:41
el conductor 00:19:43
asociado con ese coche, vale 00:19:44
esas son las cosas que me interesan 00:19:46
ahora, si yo en vez de ser un policía 00:19:48
Soy un productor de coches 00:19:50
Alguien que produce coches 00:19:52
Me interesa saber la matrícula 00:19:54
No, no soy yo quien pone la matrícula 00:19:56
A mí me interesan los datos como velocidad máxima 00:19:58
Cilindrada 00:20:01
Cilindrada 00:20:03
Cilindrada 00:20:04
Y cosas por el estilo 00:20:06
O sea, dependiendo 00:20:07
De por qué estoy haciendo este coche 00:20:10
Tendré atributos otros 00:20:12
¿Dudas? 00:20:14
No, es que esto es 00:20:21
Atr1, atr2, atr3 00:20:23
Hasta aquel número, el número n 00:20:25
Atrn 00:20:27
¿Sí? 00:20:28
Vale, la parte de esta de aquí 00:20:32
Que es esta, ¿vale? 00:20:34
Esta de aquí es un método, ¿vale? 00:20:36
Un método es, ¿qué puedo hacer con esta clase? 00:20:37
¿Vale? Ok, muy bien 00:20:41
Le hemos dado una serie de 00:20:42
Definido una serie de atributos 00:20:44
Una serie de características 00:20:46
¿Cuáles son las funciones de esta clase? 00:20:47
¿Qué puede hacer? ¿Cuál es su comportamiento? 00:20:50
¿Vale? 00:20:53
Y por ejemplo 00:20:53
En la clase persona 00:20:55
Que es un ejemplo que hemos hecho antes 00:20:56
Que tenía nombre y edad 00:20:58
Podría implementar un método cumpleaños 00:20:59
Que cuando lanzo, cuando digo ejecutar 00:21:02
Con el método cumpleaños 00:21:05
Aumenta uno a su edad 00:21:06
Entonces cada vez que llegue 00:21:08
El cumpleaños de esta persona 00:21:11
Yo llamaré el método cumpleaños 00:21:12
Y su edad se actualizará 00:21:14
A la edad que tenía antes más uno 00:21:16
¿Sí? 00:21:18
Por ejemplo 00:21:21
Si es lo que me interesa 00:21:22
¿Me interesa a mi la función cumpleaños 00:21:23
Si estoy hablando de alumnos 00:21:26
Por ejemplo 00:21:29
Pues a lo mejor no 00:21:29
¿Vale? O si 00:21:31
O a lo mejor me interesa más bien 00:21:32
Calcular la edad 00:21:36
A partir de 00:21:38
Tendré como 00:21:39
Puedo tener como atributo fecha de nacimiento 00:21:40
Y que tenga un método de 00:21:44
Calculame que edad tiene 00:21:45
Eso puede ser interesante 00:21:46
De cumpleaños y que cada vez que cumplís los años 00:21:48
Si yo tengo que ir a una base de datos a ejecutar 00:21:52
Cumpleaños, pues a lo mejor no me interesa 00:21:54
No me interesa a mí, pero no lo sé 00:21:56
Depende de que 00:21:57
De cómo lo gestionáis vosotros, ¿vale? 00:21:59
De lo que queréis hacer, de por qué estamos haciendo este programa 00:22:02
La clase libro 00:22:04
¿Vale? La clase libro tenía varias cosas 00:22:06
Allí, varios atributos 00:22:08
Pues a lo mejor tengo un método 00:22:10
Leer, asociado al libro 00:22:12
Que cuando lo ejecuto, pues me permite 00:22:14
Leer el libro, me permite leer 00:22:16
El contenido de ese libro, que estará almacenado 00:22:18
Por algún lado, no lo sé 00:22:20
Y la clase mi clase 00:22:21
Con este código de aquí 00:22:27
¿Cómo se llama el método aquí? 00:22:29
Pues se llama met1 00:22:35
Es un método que no tiene que ver 00:22:35
Es todo abstracto 00:22:37
Pero este es un método met1 00:22:38
Que hará lo que está en este bloque 00:22:40
¿Vale? 00:22:42
Veis que hay otro bloque 00:22:43
Paréntesis paréntesis 00:22:44
Llave, llave 00:22:45
Este es otro bloque de código 00:22:46
He definido que hoy en día 00:22:48
Voy a hacer el método 1 00:22:50
Met1 00:22:51
¿Vale? 00:22:52
Y esto es lo que hace Metum 00:22:52
Ya veremos como lo relleno 00:22:54
Claro, esta paréntesis de aquí 00:22:57
Es como se escribe 00:23:01
Aquí pondré los parámetros 00:23:03
¿Vale? 00:23:05
Pero como sabemos que es un parámetro 00:23:06
Pero te acuerdas main 00:23:07
Te acuerdas que aquí dentro ponías 00:23:10
Paréntesis, paréntesis, paréntesis 00:23:12
Porque tiene ese parámetro 00:23:13
¿Vale? 00:23:16
No sabemos que es, por ahora no lo sé 00:23:17
Este es simplemente que la sintaxis 00:23:20
requiere estas dos paréntesis para que luego 00:23:22
podré poner aquí los parámetros 00:23:24
de este método y si es que 00:23:25
el método depende de algunos 00:23:28
valores que yo le doy 00:23:29
pues entonces tendré que ponerlo aquí 00:23:31
si no depende de nada pues esto de nuevo 00:23:33
finalmente está el método 00:23:38
main ¿vale? que es este 00:23:42
método especial 00:23:43
que puede no estar 00:23:44
nosotros en un futuro haremos clases donde 00:23:47
no hay main ¿vale? 00:23:49
Pero si yo quiero ejecutar mi programa 00:23:51
Necesito que mi programa 00:23:54
Tenga un punto de acceso 00:23:56
Tenga este método main 00:23:58
Si yo hago mi programa 00:23:59
Que hacemos ahora 00:24:01
Calcula, recibe dos números y súmalos 00:24:02
O dame un número y dime si es 00:24:05
Par o impar 00:24:07
Y no creo un main 00:24:09
Pues cuando llegue a ejecutarlo 00:24:12
Eclipse me dirá 00:24:13
Mira, no hay 00:24:15
Un punto donde puedo arrancar el programa 00:24:16
Por lo tanto no lo hago 00:24:19
No, puedes ponerlo donde te haga 00:24:20
Lo puedes poner hasta antes de los atributos 00:24:27
Normalmente 00:24:29
¿Vale? Normalmente 00:24:31
Los atributos, o sea, declaro la clase 00:24:33
Declaro los atributos de la clase 00:24:35
Y empiezo con los métodos 00:24:37
¿Dónde va el main? 00:24:39
Yo personalmente lo pondría o a principio o a final de los métodos 00:24:40
Para que sepa dónde está 00:24:44
Pero 00:24:45
Eso no hay una regla clara 00:24:46
No, lo tienen que poner siempre al final 00:24:48
¿Más dudas? 00:24:50
al método 00:25:01
el main es un método 00:25:02
pero es un método especial 00:25:05
¿vale? tú puedes hacer todos los métodos 00:25:07
que te da la gana, pero hay un método 00:25:09
especial 00:25:12
mágico, que es el método 00:25:13
que me permite decir, oye mira, si buscas 00:25:16
un punto de acceso a este 00:25:18
programa, es esto 00:25:19
si yo te paso, esto lo compilo 00:25:21
en class, ¿vale? 00:25:24
y lo paso a una gaveta machine 00:25:25
¿de dónde empieza la gaveta machine 00:25:27
Interpretar, pues desde la primera 00:25:29
Línea del método main 00:25:31
Si no hay método main, me dirá 00:25:33
Este de aquí no lo puedo interpretar 00:25:35
Porque no sé por dónde empezar 00:25:38
¿Dudas? 00:25:39
Vale 00:25:46
¿Os acordáis de esto? 00:25:46
Esto es lo que hemos hecho 00:25:54
Nosotros he ejecutado 00:25:55
¿Cómo se relaciona esto 00:25:57
Con lo que acabamos de decir? 00:25:59
Pues public class hola mundo 00:26:01
Es el nombre de mi clase 00:26:03
¿En qué fichero me espero que esté este señor? 00:26:05
holamundo.java 00:26:11
¿Vale? 00:26:12
Con H mayúscula y M mayúscula 00:26:13
¿Sí? 00:26:15
¿Qué atributo tiene esta clase? 00:26:17
Ningún 00:26:21
¿Vale? 00:26:22
También porque si yo modelizo un coche 00:26:23
Pues tiene sentido que tenga 00:26:25
Hemos dicho su velocidad 00:26:27
Su color, lo que sea 00:26:29
Si voy a modelizar holamundo 00:26:31
¿Qué es holamundo? 00:26:33
Aquí yo tengo objetos 00:26:34
Tengo varios coches, sí 00:26:38
Tengo varios solamundos, ¿qué es eso? 00:26:39
¿Vale? Entonces, esta es una clase 00:26:42
De prueba para jugar 00:26:44
Que no tiene atributos 00:26:45
No tiene ningún atributo asociado con esa clase 00:26:47
¿Vale? Por lo tanto, no los pongo 00:26:50
Aquí está fácil 00:26:52
¿Cuántos métodos tiene esta clase? 00:26:53
Uno 00:26:57
Uno solo 00:26:58
¿Podría tener más? Sí, podría tener más 00:26:59
Pero como no me sirven, pues entonces 00:27:02
Creo solo el método main 00:27:04
Para dar un punto de acceso 00:27:06
A esta cosa 00:27:08
Os recuerdo que el método main va escrito así 00:27:09
Con minúsculas y mayúsculas 00:27:12
De esta forma 00:27:14
Si no lo escribís así 00:27:15
Cuando llegáis a arrancar 00:27:16
Él os dirá 00:27:18
Oye mira no existe 00:27:19
Pongo una M mayúscula aquí 00:27:20
No pongo estas dos paréntesis 00:27:22
Llamo esto arg en vez que args 00:27:25
Cuando arranco 00:27:28
Pues me dirá 00:27:29
Oye mira el name está 00:27:30
Yo dentro del main 00:27:31
Pongo las instrucciones que quiera que se pude 00:28:04
Este es un método 00:28:06
De la clase de la mundo 00:28:08
Por algún lado está 00:28:10
Public void print 00:28:11
O public void system.org 00:28:14
Esto es algo 00:28:15
Mágico que está ahí fuera en una librería 00:28:18
Es una instrucción 00:28:20
Y es la primera instrucción 00:28:22
Que yo ejecuto dentro del main 00:28:24
¿Vale? 00:28:26
En realidad, println es un método 00:28:27
¿Vale? 00:28:30
De la clase printstream 00:28:31
Definida por alguien 00:28:33
¿Vale? 00:28:35
Y yo la llamo desde aquí 00:28:36
Pero todas estas cosas más adelante 00:28:37
¿Vale? 00:28:40
Simplemente por ahora nosotros no entendemos por qué 00:28:40
Pero entendemos que funciona 00:28:43
Por lo tanto lo usamos 00:28:44
¿Dudas? 00:28:45
Entonces, la idea es que si yo quiero hacer el programa más sencillo posible 00:28:49
¿Vale? 00:28:53
El Hola Mundo, cualquier programa que vosotros 00:28:54
Empeceréis, el primer programa 00:28:56
Que vais a hacer es el Hello World 00:28:58
El Hello World de cada lenguaje 00:29:00
De programación es la base 00:29:02
Mínima para hacer algo y que funcione algo 00:29:04
¿Vale? Pues esto es 00:29:06
El programa más sencillo 00:29:08
Que puedes hacer en Java 00:29:10
Que es escribirte Hola 00:29:11
Y para eso necesito 00:29:13
Definir la clase 00:29:16
Definir un punto de acceso a mi 00:29:17
Programa y una vez que he definido 00:29:20
Estas dos cosas 00:29:22
Decir que me escriba 00:29:23
Hola mundo 00:29:25
¿Qué es esto en realidad? 00:29:26
Pues lo podéis ver como 00:29:30
Oye sistema 00:29:31
Estoy hablando a ordenador 00:29:32
Vete a aquella parte del sistema 00:29:34
Que es para output 00:29:37
Para escribir hacia afuera 00:29:38
Y ejecuta el método 00:29:40
Escribir una línea 00:29:42
Imprimir una línea 00:29:44
Con este valor de aquí 00:29:46
Esto 00:29:48
Es el parámetro 00:29:49
Que le estoy pasando 00:29:51
¿Dudas? 00:29:52
Vale 00:30:02
Entonces aquí 00:30:03
A ver si dice algo 00:30:05
La clase hola mundo 00:30:06
No tiene atributos 00:30:07
La clase hola mundo 00:30:08
Tiene un solo método 00:30:10
Que es el método main 00:30:10
Al ejecutar este programa 00:30:11
Se empezará por la primera instrucción 00:30:12
Del método main 00:30:14
O sea, se empieza por aquí 00:30:15
¿Vale? 00:30:16
¿Qué es el sistema output? 00:30:17
Println es algo así 00:30:18
System es el sistema 00:30:19
Output es como la salida del sistema 00:30:20
Println es imprimir una línea 00:30:22
Y hola mundo es el parámetro 00:30:25
Es lo que yo quiero imprimir 00:30:28
¿Se entiende? 00:30:30
De hecho hemos ya usado uno 00:30:36
El otro día cuando hicimos un ejemplo 00:30:38
Cuando lo hicimos por línea de comando 00:30:40
Con javascript y java 00:30:43
En vez de println utilizamos print 00:30:44
Sin ln 00:30:47
Y veíamos que en vez de escribir una cosa 00:30:48
Y irse a una nueva línea 00:30:50
Escribía una cosa y la siguiente cosa la escribía al lado 00:30:51
Y así en un funcionamiento un poquito distinto 00:30:54
Este es un método de una clase 00:30:57
En realidad, este señor de aquí 00:31:00
Es un objeto 00:31:02
¿Vale? 00:31:03
Es un objeto de la clase PrintStream 00:31:04
¿Vale? 00:31:07
Que me permite escribir 00:31:08
En pantalla, por ejemplo 00:31:09
¿Vale? 00:31:11
Y es una cosa que se crea en automático 00:31:11
Lleva a esta máquina 00:31:13
Asume que esto ya está creado 00:31:14
Y yo voy a usar métodos de esta clase 00:31:17
Como el método Printer 00:31:19
El método Printer.ln 00:31:20
El método Refresh 00:31:21
El método lo que me propongo 00:31:23
Hay una cosa que se llama API 00:31:24
Lo veremos dentro de un rato 00:31:26
¿Vale? 00:31:28
Donde sostancialmente vienen todas las clases 00:31:30
Ya hechas de Java 00:31:33
Todas las que existen 00:31:34
Y los métodos que puedo utilizar en esa clase 00:31:35
Y dentro de un rato 00:31:38
Nosotros iremos a 00:31:40
¿Qué es esto? 00:31:41
Esta es una PrintStream 00:31:42
Me voy a buscar la clase PrintStream 00:31:43
Y miro con esta clase aquí 00:31:45
Con un System.out que puedo hacer 00:31:47
Puedo hacer la Print, puedo hacer la PrintLn 00:31:49
Puedo hacer la Refresh, puedo hacer no sé qué 00:31:51
Todo el método que pueda 00:31:52
por ahora no, por ahora 00:31:54
mantengamos sencillo y nos aprendemos 00:31:56
solo que para imprimir por pantalla 00:31:59
System.org.pl 00:32:00
dudas 00:32:10
Autor/es:
Stefano Chiesa
Subido por:
Stefano C.
Licencia:
Reconocimiento
Visualizaciones:
29
Fecha:
26 de septiembre de 2023 - 20:17
Visibilidad:
Clave
Centro:
IES ROSA CHACEL
Duración:
32′ 22″
Relación de aspecto:
4:3 Hasta 2009 fue el estándar utilizado en la televisión PAL; muchas pantallas de ordenador y televisores usan este estándar, erróneamente llamado cuadrado, cuando en la realidad es rectangular o wide.
Resolución:
960x720 píxeles
Tamaño:
46.81 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid