Para generar el JavaDoc
desde IntelliJ IDEA se debe de dar click en el menu y opción Tools | Generate JavaDoc…
Introducción al Curso
Bienvenidos al Curso Avanzado de Java SE
Clases avanzadas
Clases Abstractas
Implementando clases abstractas al proyecto
Ejercicio. Clases Abstractas
Implementando métodos abstractos en Java
JavaDocs
Qué es JavaDocs
Implementando JavaDocs al proyecto
Reto
JavaDocs tags para herencia e interfaces
Generado Java Docs
Clases Anidadas
Clases anidadas y tipos
Ejercicio. Clases Anidadas
Implementando una clase anidada al proyecto
Instanciando clases estáticas anidadas
Enumerations
Interfaces Avanzadas
Métodos con implementación métodos default y private
Creando Interfaz DAO con métodos default y private
Ejercicio. Interfaz DAO
Diferencia Interfaces y Clases Abstractas
Herencia en Interfaces
Colecciones Avanzadas
Map, HashMap, TreeMap y LinkedHashMap
Excepciones
Manejo de errores
Try-catch-finally / Try-with-resources
JDBC
Definición y composición del API
Ejercicio. JDBC API
Creando la base de datos y conectando el proyecto con MySQL
Generando conexión a la base de datos y creando clase de constantes
Sentencia SELECT en Java
Sentencia SELECT con Parámetros
Sentencia INSERT en Java
Reto: Reporte por fecha
Lambdas
¿Cómo resolver el reto: reporte por fecha?
Interfaces funcionales
Programación Funcional
Lambdas
Ejercicio. Lambdas
Lambdas como variables y Recursividad
Stream y Filter
Predicate y Consumer
Fin del Curso
Conclusión del curso
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Anahà Salgado DÃaz de la Vega
Aportes 29
Preguntas 1
Para generar el JavaDoc
desde IntelliJ IDEA se debe de dar click en el menu y opción Tools | Generate JavaDoc…
Excelente clase.
Sobre la clase padre Publication:
/**
* <h1>Publication</h1>
* Es una clase padre
* <p>
* Esta es una clase base de la familia Publication, la cual
* contiene atributos para Book y Magazine
*
* @author Sroba
* @version 1.1
* @since 2018
*
* */
Luego sobre el método isRead
/**
* {@code isRead()} es un método que nos devuelve la
* respuesta de si se vió o no el libro o el Magazine
* */
package com.yossi.amazonviewer.model;
/**
* <h1>Magazine</h1>
* Este contenido es solo para visualización sin posibilidad de abrir el contenido
*
*
*
* @author yastilleros
* @version 1.1
* */
import java.util.ArrayList;
import java.util.Date;
public class Magazine extends Publication {
...
}
En la clase serie
/**
* Hereda de {@link Film}
* Esta clase representa una serie
* @author eduardo
* @since 2018
* @version 1.0.0
*/
...
package com.anncode.amazonviewer.model;
import java.util.ArrayList;
/**
* <h1> Serie </h1>
* <p>Serie una clase que hereda {@link Film}</p>
*
* @author gerald
* @version 1.1
* @since 2019
*/
public class Serie extends Film {
private int id;
private int sessionQuantity;
private ArrayList<Chapter> chapters;
public Serie(String title, String genre, String creator, int duration, int sessionQuantity) {
super(title, genre, creator, duration);
this.sessionQuantity = sessionQuantity;
}
public int getId() {
return id;
}
public int getSessionQuantity() {
return sessionQuantity;
}
public void setSessionQuantity(int sessionQuantity) {
this.sessionQuantity = sessionQuantity;
}
public ArrayList<Chapter> getChapters() {
return chapters;
}
public void setChapters(ArrayList<Chapter> chapters) {
this.chapters = chapters;
}
@Override
public String toString() {
return "\n :: SERIE ::" +
"\n Title: " + getTitle() +
"\n Genero: " + getGenre() +
"\n Year: " + getYear() +
"\n Creator: " + getCreator() +
"\n Duration: " + getDuration();
}
public static ArrayList<Serie> makeSeriesList() {
ArrayList<Serie> series = new ArrayList<Serie>();
for (int i = 1; i <= 5; i++) {
Serie serie = new Serie("Serie "+i, "genero "+i, "creador "+i, 1200, 5);
serie.setChapters(Chapter.makeChaptersList(serie));
series.add(serie);
}
return series;
}
}
Mi respuesta al reto de esta clase, utilizando las tags @link y @inheritDoc:
Magazine
package com.moisescode.amazonviewer.model;
import java.util.ArrayList;
import java.util.Date;
/**
*<h1>Magazine</h1>
* Esta clase hereda de {@link Publication}
*
* @author Moises
*
*/
public class Magazine extends Publication {
private int id;
public Magazine(String title, Date editionDate, String editorial) {
super(title, editionDate, editorial);
}
public int getId() {
return id;
}
/**
* {@inheritDoc}
*/
@Override
public String toString() {
String detailMagazine =
"\n Title: " + getTitle() +
"\n Editorial: " + getEditorial() +
"\n Authors: ";
for (int i = 0; i < getAuthors().length; i++) {
detailMagazine += "\t" + getAuthors()[i] + " ";
}
return detailMagazine;
}
public static ArrayList<Magazine> makeMagazineList() {
ArrayList<Magazine> magazines = new ArrayList<Magazine>();
String[] authors =new String[3];
for (int i = 0; i < 3; i++) {
authors[i] = "author" + i;
}
for (int i = 0; i <= 5; i++) {
magazines.add(new Magazine("Casos y prácticas de almacenamiento "+i, new Date(), "Mecalux")) ;
}
return magazines;
}
}
</**
* Hereda de {@link Publication} muestra las series disponibles pero, depende de {@link Chapter}
* para poder establecer sus capÃtulos
*
*/>
</**
* <h1>Publication</h1>
* <p>
* Es la clase base de la familia Publications
* @author anncode
* version 1
*
*
*/>
/**
*/
Trabajé sobre el método que valida la respuesta del usuario de AmazonUtil y sobre la descripción de la misma clase.
package com.anncode.amazonviewer.model;
import java.util.ArrayList;
import java.util.Date;
/**
* <h1>Clase Book </h1>
*
* Hereda {@link Film} e implementa {@link IVisualizable}
*
* Manejo de Libros
*
* @author laguz81
* @version 1.1
* @since 2019
*
*/
public class Book extends Publication implements IVisualizable {
private int id;
private String isbn;
private boolean readed;
private int timeReaded;
public Book(String title, Date edititionDate, String editorial, String[] authors) {
super(title, edititionDate, editorial);
// TODO Auto-generated constructor stub
setAuthors(authors);
}
public int getId() {
return id;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String isbn) {
this.isbn = isbn;
}
public String isReaded() {
String leido = "";
if (readed == true) {
leido = "SÃ";
} else {
leido = "No";
}
return leido;
}
public void setReaded(boolean readed) {
this.readed = readed;
}
public boolean getIsReaded() {
return readed;
}
public int getTimeReaded() {
return timeReaded;
}
public void setTimeReaded(int timeReaded) {
this.timeReaded = timeReaded;
}
@Override
public String toString() {
// TODO Auto-generated method stub
String detailBook = "\n :: BOOK ::" + "\n Title: " + getTitle() + "\n Editorial: " + getEditorial()
+ "\n Edition Date: " + getEdititionDate() + "\n Authors: ";
for (int i = 0; i < getAuthors().length; i++) {
detailBook += "\t" + getAuthors()[i] + " ";
}
return detailBook;
}
/**
* {@inheritDoc}
*/
@Override
public Date startToSee(Date dateI) {
// TODO Auto-generated method stub
return dateI;
}
/**
* {@inheritDoc}
*/
@Override
public void stopToSee(Date dateI, Date dateF) {
// TODO Auto-generated method stub
if (dateF.getTime() > dateI.getTime()) {
setTimeReaded((int) (dateF.getTime() - dateI.getTime()));
} else {
setTimeReaded(0);
}
}
public void view() {
setReaded(true);
Date dateI = startToSee(new Date());
for (int i = 0; i < 100000; i++) {
System.out.println("..........");
}
// Termine de verla
stopToSee(dateI, new Date());
System.out.println();
System.out.println("LeÃste: " + toString());
System.out.println("Por: " + getTimeReaded() + " milisegundos");
}
public static ArrayList<Book> makeBookList() {
ArrayList<Book> books = new ArrayList<Book>();
String[] authors = new String[3];
for (int i = 0; i < 3; i++) {
authors[i] = "author " + i;
}
for (int i = 1; i <= 5; i++) {
books.add(new Book("Book " + i, new Date(), "editorial " + i, authors));
}
return books;
}
}
Clase publication
package com.lsc.amazonviewer.model;
import java.util.ArrayList;
import java.util.Date;
/**
* Hereda de {@link Publication}
* @author lscordoba
* @since 2019
*
*/
public class Magazine extends Publication {
private int id;
public Magazine(String title, Date editorialDate, String editorial) {
super(title, editorialDate, editorial);
// TODO Auto-generated constructor stub
}
@Override
public int getId() {
// TODO Auto-generated method stub
return this.id;
}
@Override
public String toString() {
String detalMagazine = "\n :: MAGAZINE ::" + "\n Title " + getTitle() + "\n Editorial " + getEditorial()
+ "\n Edition Date " + getEditorialDate() + "\n Authors";
return detalMagazine;
}
public static ArrayList<Magazine> makeMagazineList() {
ArrayList<Magazine> magazines = new ArrayList<Magazine>();
String[] authors = new String[3];
for (int i = 0; i < authors.length; i++) {
authors[i] = "author " + i;
}
for (int i = 0; i < 5; i++) {
magazines.add(new Magazine("Magazine " + i, new Date(), "editorial " + i));
}
return magazines;
}
}
Excelente 😃 muchas gracias
voy aplicando cada tema de este curso en un proyecto personal.
package com.itsx.slasher.italikacesitmanagement.service;
import com.itsx.slasher.italikacesitmanagement.model.Administrator;
import java.util.List;
/**
* <h1>AdministratorService</h1>
* Servicio para el {@link Administrator} en el cual se definen
* las acciones basicas de un CRUD
* {@link https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/crud-las-principales-operaciones-de-bases-de-datos/}
*
* @author Alexis Vazquez
* @since 2021
* @version 1.0
*/
public interface AdministratorService {
/**
* {@code createAdministrator(Administrator administrator)} crea un {@link Administrator}
* en la base de datos.
*
* @param administrator
* @return true si se creo correctamente el administrador, false si ocurre algun problema
* al generar el administrador.
*/
boolean createAdministrator(Administrator administrator);
/**
* {@code removeAdministratorByFolio(long folio)} elimina un {@link Administrator} por
* medio del folio que se pase por parametro.
*
* @param folio
* @return true si el {@link Administrator} se elimino correctamente, false si no se
* logro eliminar el {@link Administrator}.
*/
boolean removeAdministratorByFolio(long folio);
/**
* {@code updateAdministrator(Administrator administrator)} es un metodo que
* permite actualizar un {@link Administrator}.
*
* @param administrator
* @return true si el {@link Administrator} se actualizo correctamente, false si
* el {@link Administrator} no se logro eliminar
*/
boolean updateAdministrator(Administrator administrator);
/**
*
* @param folio
* @return {@link Administrator} si se encuentra el administrador por medio del
* folio, {@code null} si no se encontro el administrador.
*/
Administrator getAdministratorByFolio(long folio);
/**
* @return una lista de administradores.
*/
List<Administrator> getAllAdministrators();
}
Ya lo hice
excelente clase y explicación!!!
Clase Serie
package com.andycode.amazonviewer.model;
import java.util.ArrayList;
/**
* <h1> Serie </h1>
* Serie una clase que hereda {@link Film}
* <p>
*
* Esta clase contiene el metodo abstracto
* {@code view()} Que es obligatorio implementar. Ya que hereda directamente
* de la clase abstracta Film
*
*
* @author Andres F.B.S
* @version 1.1
* @since 2019
*/
public class Serie extends Film {
private int id;
private int sessionQuantity;
private ArrayList<Chapter> chapters;
// es importante hacer una coleccion de chapters[]
public Serie(String title, String genre, String creator, int duration, int sessionQuantity) {
super(title, genre, creator, duration);
this.sessionQuantity = sessionQuantity;
}
public int getId() {
return id;
}
public int getSessionQuantity() {
return sessionQuantity;
}
public void setSessionQuantity(int sessionQuantity) {
this.sessionQuantity = sessionQuantity;
}
public ArrayList<Chapter> getChapters() {
return chapters;
}
public void setChapters(ArrayList<Chapter> chapters) {
this.chapters = chapters;
}
/**
* {@inheritDoc}
*/
@Override
public String toString() {
return "\n :: SERIE :: "
+ "\n Title: " + getTitle()
+ "\n Genre: " + getGenre()
+ "\n Year: " + getYear()
+ "\n Creator: " + getCreator()
+ "\n Duration: " + getDuration();
}
/**
* Este metodo nos crea una lista de series
*/
public static ArrayList<Serie> makeSeriesList() {
ArrayList<Serie> series = new ArrayList<>();
for (int i = 1; i <= 5; i++) {
Serie serie = new Serie("Serie " + i, "Genero " + i, "Creador " + i, 1200, 5);
serie.setChapters(Chapter.makeChaptersList(serie));
series.add(serie);
}
return series;
}
/**
* {@inheritDoc }
*/
@Override
public void view() {
setViewed(true);
}
}
/**
* <h1>Publication</h1>
* Es una clase que se hereda
*<p>
* Esta es una clase base de la familia Publication, la cual
* contiene atributos para {@link Book} y {@link Magazine}
*
* @author IsaÃas Chávez
* @since 2019
*
* */```
package com.anncode.amazonviewer.model;
import java.util.ArrayList;
/**
*Serie hereda de {@link Film}
este tipo de documentación deberÃan tenerla de esta forma todos lo lenguajes
Excelente, ya podemos ver las descripciones de los JavaDocs. A continuación, comparto las que realicé:
/**
* <h1>Serie</h1>
* Hereda de {@link Film}
* Implementa de {@link IVisualizable}
*
* @author anncode
* @version 1.1
* @since 2018
*/
/**
* <h1>Book</h1>
* Hereda de {@link Publication}
* Implementa de {@link IVisualizable}
*
* @author anncode
* @version 1.1
* @since 2018
*/
Saben porque no puedo ver el javadoc de la clase Report de la libreria makefile.jar?
/**
* Esta el metodo que genera un reporte de visualizaciones
*
* @author cesar
* @since 2023
* */
/**<h1>Esta es la parte del menu de AMAZON VIEWER</h1>
* <p>
* Se muestra el Menu
*
* @author cesar
* */
Es muy buena esta forma de documentar el código, excelente
Genial.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?