Skip to content

Latest commit

 

History

History
110 lines (92 loc) · 3.05 KB

README.md

File metadata and controls

110 lines (92 loc) · 3.05 KB

Módulos

🛠️ Requisitos

📝 Actividad

Módulos de Java

Supongamos que estás construyendo una aplicación para una biblioteca y necesitas administrar libros y usuarios. Crea dos módulos llamados "book" y "user", donde el módulo "book" se encargará de administrar la lógica relacionada con los libros, y el módulo "user" se encargará de administrar la lógica relacionada con los usuarios.

  1. Crea un nuevo proyecto Java y organiza tus archivos de la siguiente manera:
   src/  
   ├── book  
   │   ├── module-info.java  
   │   └── com/example/book  
   │       └── Book.java  
   └── user  
       ├── module-info.java   
       └── com/example/user  
           └── User.java
  1. En el módulo "book", define el archivo module-info.java con la siguiente estructura:
module book {
    exports com.example.book;
}
  1. Dentro del paquete com.example.book, crea la clase Book en el archivo Book.java:
package com.example.book;

public class Book {
private String title;
private String author;

    public Book(String title, String author) {
        this.title = title;
        this.author = author;
    }

    public void displayInfo() {
        System.out.println("Title: " + title);
        System.out.println("Author: " + author);
    }
}
  1. En el módulo "user", define el archivo module-info.java con la siguiente estructura:
module user {
   requires book;
   exports com.example.user;
}
  1. Dentro del paquete com.example.user, crea la clase User en el archivo User.java:
package com.example.user;

import com.example.book.Book;

public class User {
   private String name;
   private Book borrowedBook;

   public User(String name) {
      this.name = name;
   }

   public void borrowBook(Book book) {
      borrowedBook = book;
      System.out.println(name + " has borrowed the book.");
   }

   public void displayBorrowedBookInfo() {
      if (borrowedBook != null) {
         System.out.println("Borrowed Book Info:");
         borrowedBook.displayInfo();
      } else {
         System.out.println(name + " has not borrowed any book.");
      }
   }
}
  1. Finalmente, en la clase principal de tu proyecto, crea una instancia de Book y User para probar la funcionalidad:
import com.example.book.Book;
import com.example.user.User;

public class Main {
   public static void main(String[] args) {
      Book book = new Book("The Great Gatsby", "F. Scott Fitzgerald");
      User user = new User("John");

      user.borrowBook(book);
      user.displayBorrowedBookInfo();
   }

}

Con esto, has creado dos módulos independientes, "book" y "user", que pueden ser compilados y ejecutados por separado. El módulo "user" depende del módulo "book" y puede utilizar la clase Book en su implementación. Esto te permite organizar y encapsular la funcionalidad de cada módulo de forma modular y reutilizable.