No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso Avanzado de Java SE

Curso Avanzado de Java SE

Anahí Salgado Díaz de la Vega

Anahí Salgado Díaz de la Vega

JavaDocs tags para herencia e interfaces

9/40
Recursos

Aportes 29

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

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
 * 
 *
 */>

/**

  • <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}

  • <P>
  • implementa el metodo {@code view()} que es obligatorio implementar.
  • @author elimesa
  • @version 1.1
  • @since 2019
    */
    public class Serie extends 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.