Transcripciones
1. Introducción a la clase: clases: De acuerdo, entonces clases. Entonces finalmente construimos las clases. Ahora voy a leer la descripción de la sección. Es una especie de tratar de dar la impresión de lo importantes que son estos. Aprendimos todo sobre la clase es la programación orientada a sujeto y objeto más importante , y que es una frase simple. Pero esperemos que sí te deje con un poco de idea de lo importantes que son estos. Cubrí estos en el transcurso de siete u ocho conferencias. Um, y traté de tomarlo lo más despacio posible. Entonces tenemos la introducción. Conseguimos métodos clásicos públicos por defecto, estaba hablando de las variables que tiene público, privado, protegido. Tengo gas y dice constructores, organizando sus clases, herencia y obstrucción. Eso si le resultaba difícil las funciones, probablemente
vas a encontrar clases difíciles a diferencia de las funciones o métodos. He cubierto esto en el transcurso de siete conferencias hasta ahora, pero puedo agregar a eso,
um, clases, clases, todas las clases de programación orientada a objetos permiten hacer de un objeto la
programación orientada a objetos . De ahí viene el nombre. Entonces cuando digo que son la parte más importante de este curso, lo
digo de nuevo lo tomamos despacio para que no me preocupara demasiado. Ah, pero es importante que tú es importante aprender clases antes de que puedas llamarte al programa, debo decir
2. Todo Sobre las clases: De acuerdo, entonces. Bienvenido de nuevo. Hoy vamos a estar hablando de clases. En las últimas conferencias, hemos estado hablando de métodos, y hoy pasaremos a clases o a lo que podamos hacer con las clases. Ya ves, cuando hablamos de programación en Java, estamos hablando de programación orientada a objetos. Andi, las clases son todo lo que ver con eso. No se puede objetar la programación orientada. No se puede hacer eso sin clases. Hemos estado usando clases, Surfer. A lo mejor veremos aquí. Necesitas uno para renovar programa. Esto es sólo algo que se creó cuando creamos el programa se crea automáticamente, pero digamos que vamos a hacer nuestro propio. Entonces primero, voy a deshacerme de toda esta corriente desde la última vez, así que realmente no la necesito por la noche. A lo mejor volveré a ello. Cualquier cosa que no dejaría es nuestra principal. Obviamente se necesita un principal. Entonces para empezar a crear una nueva clase, voy a salir de clase pública comiendo hola mundo aquí. Entonces deja que el primer corchete y verás donde termina y luego podremos hacerla suya. Entonces, ¿qué es una clase? Bueno, creo que la ola más fácil mostrarte sería solo darte un ejemplo rápido. Vamos a crear clase llamada Animal. Se puede ver al instante la división entre trabajo antes de marchar y C plus rendimiento y alto provienen de un simple fondo. Por lo que ponemos cada uno de nuestros nuevos corchetes en una nueva línea de la alineación. Él. Java. Tiendes a poner el 1er 1 en el extremo de tu primera línea y solo pones el final en el en uno
nuevo. Pero soy de fondo de c ++, así que me siento cómodo haciéndolo. Entonces creas una clase crearía un animal clásico, y lo que clase permitirá hacer es crear objetos de este animal. Por lo que hemos definido un animal cuando podríamos hacer montones de diferentes animales con diferentes atributos. Eso voy a empezar por crear un nombre para ello. Entonces, solo démosle un nombre. Y pensemos qué más podría tener un animal. Bueno, podría tener un liberado y ciertamente no tener edad. Ah, color
Beau Welles. Sí, hay color será una cuerda. Ah, rayado Y podría ser capaz en realidad, algunos usan toros. Esto es un infierno entrar por eso. Me voy a,
uh, uh, con una B mayúscula olvidemos de toros de? No lo sé. Yo me estoy dando vueltas. Vuelve a ello, Ben. Ahí mismo. Tenemos cuatro Trib. Usa un alfiler lso, esta clase animal. Ahora lo que tenemos lo que podemos hacer es volver a un Mame y crear un objeto fuera del animal. Entonces lo que tenemos que hacer es apretado. Um uh, clase nueve. Entonces no, tengo que darle un nombre a este animal. No estoy hablando de este nombre de cuerda aquí. Hablo de un nombre para el objeto en sí. Iba a llamar al animal uno por ahora igual a nuevo. Oops, estoy en baja, Así que creamos fuera objeto de nuestro animal de clase. Hemos llamado al animal. Entonces animal uno es el objeto. Animal es la clase. Si nunca has hecho ningún trabajo en clases antes, entonces tus cerebros probablemente un poco confundidos en este momento, y se aclararán mucho más rápido si tienes algunos hace programándolo en tu propio tiempo. Pero ahora podemos acceder. Ahora que hemos creado ese objeto aquí, podemos acceder a sus atributos para hacerlo. Simplemente tecleamos el nombre del objeto. Es su pared animal, y luego pato ya ves, hemos puesto parada completa aquí. Empecemos. Creo que esta es una lista de todos los atributos públicos el y podemos acceder. Por lo que nos dieron edad raza color nombre s también ofrecen nombres. Es así como lo enumeramos en la clase. Digamos que esponjoso. Haremos lo mismo por los demás atributos. Así que crían mucho por la noche. Perro, recuerda, esto es una cuerda. Por lo que tienes que usar nuestras comillas. Yo estoy dentro. Mi edad es igual a siete años. Ah, Y entonces Y él está por ahí. Iban a crear un nuevo objeto Animal animal, uno de animal de clase te vamos a dar esto es Mayo veces queremos si queríamos otro Sólo
tenemos que llamarlo otra cosa. Conseguir que re Parece un animal pequeño. Mal ahora. No mucho para leerlo, pero estoy seguro que está bien. Acaba de perder todo sentido para mí animal a llamarlo Nuevo Animal. Y yo soy Sólo tenemos que darle un poco sus atributos otra vez. Por lo que este podría llamarse rayado. Ah, pinzas de
gato Ese fue el último color. Ah, después de la noche gris y estaban teniendo con grado dos objetos separados. Animal un animal a fuera de la clase. Animal. Um, lo
voy a dejar ahí para el video de hoy, pero de verdad sólo quisiera que tu dedo del pie tengas una práctica con estos y te metes en la cabeza que esto es un objeto. Esta es una clase. Este es un objeto fuera de esta clase. Simple, una vez que lo haces fuera de ellos. Pero por ahora, me imagino que es bastante confuso. Vamos a hacer unos videos justos en clases bajas, así que no me preocuparía demasiado si no lo consigues enseguida.
3. Clases: clases y métodos: Entonces al final del último video nos recuperamos bien, clases. Uh, en el momento en que realmente no hicieron nada. Hemos creado estos objetos de animales. Crea un perro llamado Fluffy. De acuerdo, un gato llamado Scratchy. ¿ Dice esto que realmente no hacen nada? Por el momento, tenemos un poco esta información, pero si ejecutamos el programa, ese aeropuerto está en blanco. Sabes que no viene nada por ti. ¿ Cómo accedemos a esta información que estaba creando estos objetos? Bueno, tenemos varias maneras si vengo por debajo de este objeto aquí, y solo voy a dar a conocer el nombre de nuestro perro Fluffy aquí. Podrías hacer eso usando la misma línea de impresión del sistema antiguo. Ah, comando seguido de objeto. Yo solo estoy accediendo con el con el tope completo. Entonces básicamente lo mismo que sí aparecimos. Ahí es donde no hemos puesto esponjoso, Simple, simple, simple, simple. Te mostraré lo que pasa si tratamos de no ponerlo aquí arriba. Obviamente, aún no
hemos puesto nombre nada, así que simplemente sale con No,
no llama a una era, no aplasta el programa y arruina horriblemente tu día. Inicializamos el nombre aquí abajo. No lo inicializamos a nada, así que simplemente se convierte en No, ese es el último. No significa que significa que existe. Pero no iguala nada vino en mente para eventos futuros. Sabe que podemos inicializar estas cosas aquí abajo en clase. Animal Podemos inicializarlo eso debilitar Establecer el color para ser otro mi negro Así que es un
negro predeterminado Así que vamos a ejecutar el programa, Nofal face todos buenos s deshacernos de ese cálido en lugar de nuestro nombre traer Aquí vamos a salida color. Se ve todavía Outpost marrón. Entonces ponemos el color a negro aquí abajo en animal de clase Pero a medida que lo
inicializamos, lo anulamos aquí establecemos el color de Fluffy para que sea marrón. Si salimos antes de anularlo, entonces va a funcionar exactamente igual. Ver Marrón negro. Entonces antes de que lo anulemos, color de
Fluffy es un negro predeterminado después de que lo anulamos, Obviamente se vuelve marrón. De acuerdo, así que hemos averiguado cómo acceder a la información, pero igual que en las conferencias de función o método, pudimos crear funciones debajo de las principales funciones nuestras propias. Podríamos hacer lo mismo en nuestras propias clases para que pudiéramos crear funciones las pertenecen a
animal de clase . Sólo habrá accesible cuando tengamos un animal objetos. Entonces solo voy a crear una función que permita a los animales que esto se describan a sí mismos . Entonces sabemos después de poner el esquema del sistema, no
tenemos que escribir eso. Si queremos acceder a algo, sólo
podemos llamar a la función y él se describirá. Entonces hagámoslo. Voy a crear un agua fría. Ah, describe. Me parece un nombre bastante bueno cuando todo esto va a hacer es que va a
hablar de sí mismo. Entonces se va a saludar. Mi nombre es bienvenido, Capitán. Un nombre al final. Entonces intentémoslo y aposémoslo. Entonces, ¿cómo tenemos que creas que vamos a acceder a esta función aquí? Quieres, tira de los medios de comunicación, tener una chica como tú Eres bienvenido a. Pero les diré ahora vamos a llamar exactamente igual que llamamos a nuestras variables. Tiene, digamos, animal uno. No lo que yo lo llamo Describa a nadie en la salida se parezca. Entonces no me culpo. Ahí vamos dice hola. Mi nombre es esponjoso porque está diciendo hola mi nombre es más nombre. Obviamente, intentemos llamarlo de nuevo antes de inicializarnos, también, Fluffy dice Hola. Mi nombre no se ve todavía exactamente como lo hacía antes. No inicializamos nombre a nada, así que obviamente sólo va a decir ninguna muestra. Simple, simple. Solo vamos a expandirnos. Describa los inicios, dije, describiendo no nombre. Ah, tengo, eh, años de
edad. Entonces ya lo he hecho antes. Ah, ahí estoy escuchando. Además, realmente no
me gustan los bancos de encuentro. Se pone un poco confuso, pero una vez que lo has hecho una vez, solo puedes mantenerlo igual. Entonces otra vez se iba a animal. Un perro describe que viene ahí arriba con el punto realmente útil que irían. Podemos usar exactamente lo mismo en animal para, si te estabas preguntando, tal vez conseguir de ellos. Por lo que esta función descrita es su funcionamiento en los objetos, no en la propia clase. Por lo que se podría esperar descrito para salir con, ya
sabes, esponjoso y de siete años de edad. Pero es está buscando animal para, Y entonces está buscando específicamente de los valores en animal, también. Sé que puede ser un poco confuso sacar la cabeza, pero es esta la esencia de la programación Java de trabajo. Java no es lenguaje orientado a objetos. Y así tienes que meter la cabeza alrededor de las clases porque son lo más importante. De repente Sella en el último video. Vamos a trabajar en estos por algún tiempo, así que no te preocupes.
4. Clases: Public por correo electrónico: Entonces otro punto interesante sobre tener tus propias clases es cuando tenemos estas variables definidas aquí en la clase que público por defecto, voy a entrar bastante bien por medios aún públicos, privados, protegidos. Pero es una cosa. Yo sólo quería saber que a estas alturas hay algo que estas variables son públicas. Pero, ¿qué significa eso? En esencia, volvamos, Teoh. Uno de los métodos que creamos unas cuantas conferencias anteriores. Creo que fue algo a lo largo de líneas de en año de nacimiento. Cal mata un nacimiento tú. Entonces algo a lo largo de ese largo, que tomaría en los clips de la edad int. Um, se habían tomado el ent Age, luego regresan. ¿ Qué? Sí, nacieron en más o menos. Sin Sin los meses, obviamente. Entonces hagámoslo. Uh, 2016. Toma un juez. Si fuéramos cantidad aquí que el animal a puerta click año de nacimiento, tendría que introducir la edad aquí así que en realidad tenemos que introducir la edad. Por lo que el animal de dos puntos edad acabamos de escribir en su alineación. Si estuviéramos en eso, entonces va a funcionar. Bien. Ah, no, realidad nunca
producimos. Eso va a ser un almuerzo largo. El fuera de línea de impresión funciona. Bien. Um pero así lo hicimos en las conferencias anteriores. No es necesario cuando se tienen estas variables públicas aparecen no tenemos que pasar en la edad aquí. Entonces si sacas esa línea, entonces ves muy claramente Déjame solo seleccionar raza o algo así. La edad aquí está en forma negra, vale, para sacar la edad que estoy pasando. Entonces de repente esta edad se refiere a la edad aquí arriba, cual se encuentra como una variable de clase. Porque esto es público, nuestra función me meto aquí abajo, concebo eso. Entonces conseguimos esta terapia X por pasar en edad a la función, pero eso ya no es necesario. Ahora, si volvemos a ejecutar esto, voy a obtener exactamente la misma respuesta. Obtenemos 2012. Pero en lugar de pasar, um, variable, lo obtiene directamente de la clase. Ahora bien, esto no necesariamente es algo bueno. Estaremos cubriendo eso en futuras conferencias. Pero sí quería que señalaran que waas posible porque específicamente, estas variables son públicas por defecto.
5. Clases: Getters y Setters: Entonces al final de la última conferencia te hablé de, uh, estas variables siendo públicas cuando las declaras por primera vez Eso no es algo nosotros particularmente uno en general, cuando creas uno nuevo, con
clase como muchos variables como sea posible para ser privadas por defecto, obviamente el público por defecto que generalmente quieres que sean privadas si son viejas públicas de lo que todo podrá ver todo. Sería realmente ineficiente. Simplemente sé mal programa y en general. Entonces para definir un tipo de variable privada en privado frente a simple uh, ves, ahora tenemos algunos errores creados, a saber, decir nombre es acceso adecuado en animal. No estaba seguro de cuál era el error. Entonces para evitar esto, tenemos que acceder a esta variable con funciones esos crean uno usado para tener qué cadena get name. Bueno, eso va a hacer es devolver nombre ahora? Si quisiéramos imprimir nombre, tendríamos que llamar
también al animal de la función . No te den nombre y todo lo que va a hacer es mirar lo que hemos puesto nombre, también. En impresión hacia fuera. Utilizamos la función de retorno para que en realidad no se imprima. Pero ya sabes a lo que me refiero. se recupera el nombre. Obviamente no podemos ponerlo así. Salimos a imprimir. Todavía no lo hemos puesto. Eso necesitamos una función muy similar. Eso sólo va a poner nombre en estos tipos. Las funciones se conocen como setters. Soy getters, tryouts hablando tipo de la misma vez. Y todo lo que va a día Izale es permitir a los usuarios establecer el nombre. Entonces eso va a llevar en una cuerda que la pequeña simplemente la devuelve para que no tengamos que llevarnos con ellos. Esto va a llevar a la industria. Tomémoslo en cadena, no esta noche y pongamos Y entonces nombre va a ser igual a entrada. Bastante simple. Un poco de América. Yo no le devolvería nada. Ah, sí. Hace evitarlos. No hace falta que sea una fuerza. Esto aún no va a funcionar porque estamos tratando de acceder a él a través del médico aquí. Obviamente, es ojo privado no funciona. Entonces para evitar esto, tenemos que poner el nombre como tal, Nadie acaba de salir de esa línea. Entonces es un poco de Pfaff. Pero quieres que tus variables sean privadas. Ah, y obviamente Ah, bueno, sólo consíguelo también. Oops, a ver qué pasa. Ah, realidad no imprimí. Ahora lo hiciste. Eso son Eso debería estar bien. Probablemente. A lo mejor así. En primer lugar, Wolfie, ahí está siendo impreso. Por lo que nieve ponemos el nombre con nombre fijo Filipe en lo recuperamos con get name. Entonces esto puede parecer un poco extraño, supongo. Pero la idea y la programación orientada a objetos es que necesitas mantener tus objetos de valor privados. Si no lo haces, entonces todo podrá verlo todo y es ineficiente. Se va a confundir y poner línea cuando tengas 20 objetos diferentes y las diferentes clases exactas er por lo que tratamos de mantener lo más privado que podamos. Yo soy. Pero si sabes que algo necesita ser público, entonces palancas públicas o mejor aún declara público, para que todos puedan ver que hay público. Um, ser generalmente querer mantenerlo privado. Cualquier vez que quieras que una variable sea pública es decir que quieres que el usuario interactúe con ella y sea capaz de cambiarla. Si es privado, entonces generalmente no será cambiado por el usuario que cambiamos en segundo plano por el programa en que accedimos a través de funciones de clase, pero el usuario generalmente no tendrá mucha interacción con él. lo que usar nombre es el ejemplo que probablemente se trataba de la idea alta, porque lo más probable es que eso vaya a ser cambiado por el usuario. Ya sabes, le pones nombre a tu papi, ¿
no? No puedo cambiar su raza es lo que estoy tratando de atravesar. Bueno, mira a los constructores en el siguiente video y muéstranos cómo esencialmente autovalores predeterminados como lo
hemos hecho aquí, pero tres de un constructor.
6. Clases: Constructores: Pasé un poco de tiempo refractario el código aquí o re factoring una vez un olvido así que ver una fábrica refrescante esencialmente sólo significa limpiar el código. En el último, agregué algunas variables diferentes que pensé que eran aplicables a los animales. Eso sólo llegó aquí. No es necesariamente un tipo animal esto. Conseguimos las líneas, obtenemos sangre. Pero cada animal probablemente tenga un dueño. Si son una mascota, que es la otra variable, lo hago No, hay un par también es un tipo booleano bully ins solo puede ser verdadero o falso es solo las palabras
inglesas verdaderas o falsas? S un instructor bastante simple siguiente a ti mismo. Te hablaré a través de lo que es constructor. Entonces constructor es único. Es una función o un método. Um, clase no necesita tener uno. Pero si sí tiene uno de lo que tiene propiedades de alimentación, hay que tener en cuenta eso Constructor configura los valores predeterminados para una clase
objetos extraños de todos modos, así que anteriormente lo tenemos como el color era negro. Yo lo creo Waas. Acabamos de configurarlo en la propia variable, lo cual está bien. Es válido, pero es mucho más limpio hacerlo a través del constructor. Entonces montamos aquí un constructo, sepan que no tiene un tipo, así que no es evitar ni dentro o lo que sea. No tiene un tipo cayó para hacer eso. Entonces llamará Errores s No tengo tipo. Y luego ya ven, aquí tomamos tres valores y acabamos de configurar unas variables privadas. Dos. Si pasamos, ¿dónde pasamos? Bueno, aquí
arriba donde declaramos nuestro nuevo animal un objeto. Ah, éramos, ya
sabes, animal animal. Uno es igual a nuevo animal. Y luego pasamos estos tres valores. Aquí te dejamos una cuadra feudal de cinco que es solo color de la edad de raza. Y luego ponemos las variables privadas para que lo pasemos. Entonces así es como adjuntaste los valores por defecto a tu Ah, sin valores por defecto. Es así como se adjuntan valores al inicio de un objeto. Supongo que aún puedes vender por defecto Molly's si estás tan inclinado, um, aparecen estos estarán terminados por el constructor. En este caso, si no lo pasabas a un constructor, Say es una mascota dijo que falso por defecto, y todavía dudas de lo que es malo para hacerlo a través del constructor. Nos dejaré falsos. De todos modos, también
reutilicé ese gas y dice que presenté la última conferencia. Probablemente Onda. Obviamente los retornos asombrados es aparentemente sólo regresar. ¿ Verdadero o falso? Es de tipo booleano. Fue sólo evitar tomas en un toro en sets. Fue un pep, peasy fácil. Entonces esta es una variable pública. No necesito gasolina y dice para solo podría acceder a ella a través. Um, sí, veo que nos vemos a nosotros mismos dice Gazza y luego rápidamente cambió de opinión. Uh, esto voy a mantener Esta es una variable pública en dso Sólo acceda a eso a través de la vieja Ah, como así sólo lo mismo para el dueño. ¿ Qué tengo? Un error? Lo voy a dejar porque no estoy seguro de cuál es el problema. Lo dejaré por ahora y entonces sé que podríamos hacer lo mismo. Ah me dijo:
¿Por qué no? No del todo seguro por qué estoy consiguiendo estas áreas aquí tipo de hallazgo símbolo. Van a público por lo que deberíamos tener acceso sobre ellos. Uh, declarando mal a Sí. Sí, eso
no. Conozco la vida un poco funciones. Es así como aceptar variables públicas poco demasiado C plus en ellas hasta que nada
probablemente sea diferente en eso también. Y el último que tenemos es conseguir es una mascota que decimos que es verdad. Ondas tal podríamos poner el dedo del pie propietario. Harry, Una comprobación más rápida otra vez. Aquí está podríamos hacer pasar al dueño, dice una mascota. Um e bueno, podríamos hacer un pequeño chequeo. Si es mascota no necesitas esos iguales falsos y no sé Um oh, no, él
no enfría kilos algo a lo largo de esa línea. De todos modos, te das la idea el Si ponemos esto es falso, entonces no podemos poner dueño a nada que sea. Probablemente estoy muy limpia una forma de hacer eso. Um, que voy a tener un pensar en realidad me gusta tarea. Piensa en pensar en una forma de limpiar eso. Ah, esa forma de limpiar que probablemente sea a través de un método. Entonces si es una mascota es falsa, entonces ya sabes, dueño del
set es igual a No. No
obstante, obstante, si es una mascota es cierto. Entonces propietario se establecerá para que el usuario impulse algo en esa línea. Entonces, en la próxima conferencia, creo que voy a introducir clases base o empezaremos la herencia de Java. Y así creo que hace frío en Jovel y ver si clases y parar clases. Eso es todo. Sí, sí. La gente supone clases basadas en icales y clases infantiles. Estoy un poco oxidado. Enfermo. Todo este ejemplo animal tiene mucho más sentido después
7. Clases: organizar clases: Me meto rápido, claro con un show te cómo extender tus clases a través de múltiples archivos. Probablemente sea algo de moda en la sección de estilo de clase. En el momento en que hemos estado trabajando en un solo expediente. Es solo el que creé, El mismo inicio. El curso, de hecho, es comer Hola, mundo o Joe? Um, obviamente, cualquier proyecto final o lo que sea que hagas, quieres que el constantemente sea algo un poco más, uh, relevante. Obviamente, no lo
hiciste. Hola. mundo fue sólo porque el primer programa que fuimos fue tener un mundo a diez centavos para
mantenerlo por ahora, por sólo por mantenerlo sencillo. Pero obviamente, en el tuyo, uh, que sea relevante. Entonces es solo que están teniendo
más, más clases tendrás que crear nuevos archivos para cada clase. Este es un básico de programa de trabajo, y no tanto en otros idiomas, sino en Javi, generalmente carrera nueva página para cada clase. Y por eso te he hecho ver aquí. Acabo de llevar los aros de código al código de la clase animal y fue creado. Presenta un poco de Jova exacta mismo código. Creo que esta es una clase pública ahora creo que normalmente dices animal de clase, pero obviamente clases públicas por defecto. Yo sólo tomé todo el código y pegué eso aquí, uh, está en blanco fuera el momento. Entonces otra razón que es la misma zanahoria. Te lo puedo prometer. Entonces si quieres crear tu propio archivo, simplemente haga clic derecho en el paquete de fuente todo el mundo comiendo. Nueva clase Jova. Se va a crear un nuevo, um, archivo, Sin página o pestaña. No
obstante, sin embargo quieras referirte a ella, solo llámanos una gorra por el bien de la simplicidad en día tendría. Simplemente crea cualquier archivo Cattle Joe accesible pero básica oficina de Sawyer. No hay público sin clase y me refiero a cómeme Hola Mundo archivo el resto de su aquí Miedoso de este Teoh que sea un poco más limpio, y estaremos trabajando en estos archivos en el futuro. Pero es importante tener en cuenta que su acuerdo en pista juntos simplemente bien si voy a tomar estos son desvergonzados que trabajar esto Esto fue honestamente algo que me confundió un poco justo cuando empecé a trabajar con Java extendiéndose eco a través de múltiples archivos. En realidad no es algo que hagas demasiado y de forma segura además, o puedes trabajar en torno a eso simplemente bien. Ya sabes, uno de dos archivos diferentes y y tú archivas para cada clase. Bastante ajeno en C plus. Plus. Entonces esto fue algo que me perplejo, pero así me imaginé que le dedicaría conferencias. Pero sí quiero mostrar que el código. Uh huh. Iba a decir habitaciones. Bien, al parecer. No. No. Ah. Dice, um, Gunnar es eso. Ah, esto es dinero. Sí, está bien. Está funcionando. Bien. Está en mi nueva clase aquí. Uh, yo soy rescate Karen, sin embargo, que estoy guardando en secreto hasta la próxima conferencia, pero sí, sólo sé eso a través de lo que ya hemos hecho. Un animal. Y ya sabes lo bien que todo esto está interactuando juntos simplemente bien. Por lo que no sabes dónde se está extendiendo a través de múltiples archivos, y es una buena práctica hacer
8. Clases: herencia: Entonces en la conferencia de hoy, nos vamos a convertir en herencia. Herencia es que es un trabajo bastante avanzado de materias. Voy a estar alrededor del arbusto. Es muy integral al programa Jeff, sin embargo. Es decir, no
lo es. No es del todo el paso para eso. Tomaste dos clases. En general, las clases realmente son la base de objetos o programa de ingesta. La herencia es un Adán muy útil. Bueno, no
es del todo necesario. Aún así, vamos a estar cubriéndolo porque es realmente buen programa. Y en general creo que es Ah Howard debería estar haciéndolo. Ya he limpiado la clase de animales una vez más. Yo quiero decir limpiado. O sea, simplificado. En este caso, he girado esto sobre público, que no deberían serlo. Yo sólo lo estoy haciendo primero. bien de la simplicidad. No necesito una docena de gas y dice en su programa, quería mantener el mayor número posible de estos privados porque es sólo buena programación. Sólo lo estoy haciendo por un sake más simple. También he hecho esa única función que es comer. Se va a imprimir comer. Entonces si vuelves a nuestra unidad, tenemos un mundo aquí. Declaramos nuestros nuevos objetos animal uno, su objeto fuera animal yo iba a hacer animal come, Am I get Él sólo imprime comiendo como debería. Esto no es nada nuevo, pero este animal es un ejemplo de una súper clase, como se le conoce en Java en simple, se supone que proviene de
eso, se le conoce como tu clase base. Entonces qué clases basadas es una especie de la esencia, la esencia de lo que significaban ser tus objetos. Entonces un animal es un término muy generalizado. Esencialmente, el
adulto es
un animal, un gato como animal, un caballo es un animal. La ballena es un animal. Um, es un término general. Si queremos conseguir más detallado de lo que hacemos es,
crearíamos sub clases, crearíamos sub clases, que he hecho aquí dicen que la CIA ha creado Dog Dodger por lo que perro de clase pública extiende animal eso. Esto es obviamente diferente a cómo declaramos esa clase animal que acabamos de crear animal de
clase pública . Ah, esto extiende bit animal, nos
dice que es una subclase de animal. decir, Esdecir,está en inglés llano, pero puede ser un poco difícil de comprender. Entonces lo que necesitas saber de sub clases como esta, tiene acceso a todo dentro de nuestra super clase. Por lo que nuestro perro de subclase tiene todos estos atributos y todas estas funciones. Sé que podría ser un poco complicado por el momento, pero te voy a mostrar. Entonces en lugar de crear animal iguala calor animal fuera de la super clase que vamos a crear de nuestro perro. Entonces va a tener un perro. Ah, Doug, uno tú no y yo no tendré Cuando e ven sigue comiendo Príncipe. Ese es el significado. Nos dice que a pesar de que sabes todo ese código está escrito un animal, nuestra clase de perro tiene acceso a todo. Entonces cuando llamamos comer en perro uno, estamos consiguiendo acceso a nuestro comer animales. Uh, eso es súper simple como lo hago normalmente, pero no es tan simple,
supongo, Um, Um, vamos a estar cubriéndolo durante el curso fuera de unas cuantas conferencias. Tengo tiempo de explicarme sobre todo el año. Sólo a los cuatro minutos seguiremos adelante. Por lo que lo siguiente que debes saber sobre super clases de sub clases es que aunque la subclase tiene acceso a todo dentro de super clase, la super clase ciertamente no tiene acceso a todo en la subclase. Esto es importante. Es Es una estructura jerárquica, ¿sabes? Va de abajo a bomba. Todo en la bomba tiene acceso a todo lo que está por encima. Ah, pero animal en la parte superior no tiene acceso a todo lo que hay debajo de él. Esa es la mejor manera en que puedo describirlo. Yo creo que sí. Simplemente crearé una función dentro de un perro que sólo va a ladrar. Simplemente va a imprimir la línea tan simple. Entonces ahora si queremos acceder a esto, que es tipo en dog one dot book, corremos ese cool. Entramos a comer, tenemos lobo. Eso es lo más viejo que los llamamos. Entonces probemos esto sin clase animal. Por lo que animal animal uno es igual a nuevo animal. Seguimos en lo que va de aquí. Para que podamos tu animal maravilla comer bien. Ah, esto es Es un método animal, por lo que el animal uno tendrá acceso a él. Ves, no
hay tercera línea de comer, pero si tratamos de hacer y entonces vamos a uno no ladrar aros. Estoy recibiendo un error. ¿ Por qué? ¿ Por qué llegamos ahí? No podemos encontrar símbolo. Tipo de mujer animal variable. Esa es la ubicación. Caja de método simple. No puedo encontrar el método ladrido. Esencialmente. Ah, esto es sólo porque declaramos método corteza dentro de clase bíblica inculcado dentro de nuestra clase
animal. Bajo tal, no
tenemos acceso a ella desde un objeto animal.
9. Clases: Abstracción: Por lo que algunos de ustedes más espectadores con ojos de águila se habrán dado cuenta en la última conferencia que creó a algunas clases, la segunda siendo tapada, no Java. En realidad nunca entré en ello, pero tal vez manchado a lo largo de la parte superior aquí. Ah, éste sólo me dice fuera similar al perro, dijo
uno. Pero éste dice, Que yo sólo quiero hacer es demostrar que nuestro perro no tendrá acceso a nuestro gato. Ah, funciones o métodos no podemos hacer perro un perro para mí fuera. Entonces pienso en perro y gato como en el mismo nivel está, ah, jerarquía que estamos discutiendo en la última conferencia. Ambos tienen acceso a nuestros métodos animales, pero tampoco tienen acceso a los de los demás. Entonces siento un concepto sencillo. Ah, perro, cuéntame en un gato no puede ladrar esencialmente lo que me estoy levantando. La verdadera carne de este eléctrico que está recibiendo, también, fue obstrucción, Um, obstrucción. Puede ser confuso. Los conceptos empiezan con, pero es realmente sencillo. Una vez te doy un ejemplo de código. Entonces obstrucción significa que creamos una clase o método abstracto, Um, cuando creamos una clase o método abstracto, significa que no podemos hacer un objeto a partir de él. Sé que eso no tiene sentido de los momentos. Yo sólo voy a seguir adelante y mostrarte. Entonces si yo estaba escribiendo abstracto aquí, ya no
podemos implementar Animal tiene su propio objeto. Entonces olvídate de dos. Eres tú a mí como el mundo ve analista abstractos no puede ser instancia que atió por lo que
ya no podemos acreditar a Animal uno. Por ejemplo. Ya no podemos crear animal 23456 Si creamos una clase abstracta, entonces tenemos toe implementar todo esto a través de sub clases. Um, honestamente no veo demasiado el uso en abstracción porque esencialmente está limitando lo que se
puede hacer. Ya no puedes crear clases de huesos desnudos. Eso como animal, tienes que hacerlo 'll a través de perro gato pájaro. Excepto tres sub clases. Um, y ese es Satel Abstraction es que podríamos hacerlo a través de comer 00 métodos ¿Debo decirlo? Si yo fuera a hacer comer un Abstracto Ah, los métodos
abstractos no pueden tener un cuerpo. Ah, sí. Entonces, ¿en realidad no se puede implementar nada? Obviamente tengo que simplemente declararlo así y entonces pondríamos en práctica nuestra función de comer . Ah, reunión ejecutiva de
boletos hoy. ¿ Cómo? Porque llamé a comer aquí. Probablemente. Sólo voy a ignorar por época. Por ahora. Hasta eso, cubriremos los medios. Um, es Ah, intentemos implementar nuestro método de comer. ¿ Qué fue eso evitar? Sí, bueno, señor Bueno, vacío
público. Come. Y luego fue algo a lo largo de líneas fuera de Alepo la última vez. Y así la razón por la que tienes un método abstracto es que querrías que sea diferente para cada subclase otra vez. Esto no es necesario lo cubrirá en el futuro, pero no es necesario tener método de clases abstractas. Perdón por diferenciar entre las sub clases. Digamos que un perro raspa su comida mientras el gato esta noche se aleja. Va a algo. Tengo el mismo error aquí porque no implementamos Comer. Ah, así que esto podría estar fuera esta noche mordisqueando. Entonces llamemos a comer otra vez. No deambulen. Yo también soy crítica. Por lo que se convierte en gato uno. Nunca lo tengas fresco. Entonces llamamos perro Wanda comer. Nos rompen. Nosotros llamamos gato uno, pero te volverás a mordisquear eso. Eso es obstrucción a los métodos. Igual que hicimos con la clase animal. Ya no podemos llamar comer del animal mismo. Ya no podemos inicializarlo en el propio animal. Apenas el Claytor es un método que ambas de estas sub clases deben tener y entonces podemos cambiarlo en cada una de ellas. No necesita ser abstracto para que se cambien. No obstante, al
menos no n c plus. A lo mejor estoy hablando mi culo e Eso es sólo para aclarar es ah, no necesitamos No necesitamos ser abstractos. Acabamos de conseguirlos. ¿ Qué hace eso por ahí? Gracias. Eso acabará de configurar un defecto de comer. Bueno, ¿tienes algo aquí dentro? Entonces si pudiera simplemente engañarlo con el portapapeles que consigues, uh, era comer y luego deshacerme de éste en gato encendido, veremos qué pasa cuando estábamos en él. Deshazte del yo en el Bach para simplificar. Ahí lo tenemos. Entonces, d c. ¿Qué ha pasado ahí en animal? Establecemos el defecto de volver a comer pronto Clase abstracta, pero nos deshicimos del abstracto en el método. Por lo que ahora es un defecto que se está pasando a perro y gato. Simplemente dice comer punto,
punto, punto Sin embargo, en perro decidimos que no queremos médico, solo digamos comer el hígado. Queremos un perro que lo raspe. Entonces ponemos dólares burlándose. Por lo que hemos anulado nuestro método de comer. Diablos, ya
no digas comer. Cuando llamamos a eso desde un objeto de perro, dirá rasguños en el gato. Nos olvidamos de hacerlo o no nos molestamos. Pensamos que comer era, ah, una descripción válida de lo que estaba haciendo. Entonces acabamos de salir. Es camino comiendo. Nunca nos molestamos en anularlo. Y como tal, simplemente imprime comer. Um, entonces, sí, abstrayendo clases. Yo puedo conseguir Ah, porque en pocas palabras, puede que no quieras la clase base así. Es que tal vez sea un poco demasiado simple. No hace suficientes los métodos de abstracción. Realmente no veo el punto apagado porque ya puedes pasarlo abajo. No tienes que hacer cambios en él, y puedes configurar un valor predeterminado. Si abstrae un método, entonces no puede declarar un valor predeterminado y tiene que configurarlo en cada clase. Por lo que las clases abstractas van por ello. No algo que yo haga personalmente, pero eres más que bienvenido a abstraer métodos es algo que evitaría. Si ves el uso de la misma, entonces siéntete libre