Primero sepamos qué es una clase y un paquete en Java. La clase en Java es un modelo para crear objetos. Significa que las propiedades y acciones de los objetos se escriben en clase. Las propiedades están representadas por variables y las acciones de los objetos están representadas por métodos. Entonces, una clase contiene variables y métodos. Las mismas variables también están disponibles en los objetos porque se crean a partir de la clase. Estas variables también se denominan ‘ variables de instancia’ porque se crean dentro del objeto (instancia).
Ilustración:
class Human { // Properties --> Instance variables String name; int age; // Actions --> methods void speak() { System.out.println("Hey there! I am " + name); System.out.println("My age is " + age); } }
Producción:
Hey there! I am Vasanth Kumar My age is 20
Nota: Aquí la palabra clave class se usa para declarar una clase. Después de esto, debemos escribir un nombre de clase. En la clase, escribimos variables de instancia y métodos.
Paquetes en Java
En Java, los paquetes son una colección de clases, subpaquetes e interfaces. es decir, un paquete representa un diccionario que contiene un grupo relacionado de clases e interfaces. Cada vez que escribimos una declaración, ya sea como se muestra a continuación, estamos importando todas las clases del paquete java.io.* . Aquí, java es un nombre de directorio e io es otro subdirectorio dentro de él. Y el * representa todas las clases e interfaces de ese subdirector io.
import java.io.*;
Tenemos muchos paquetes de este tipo, por ejemplo, java.lang, java.util, y existen muchos más dentro de los cuales sus clases d se encuentran dentro del paquete. Para usarlo, tomemos los paquetes más utilizados, que son el paquete ‘lang’ para el diseño de Java y el paquete ‘io’ para operaciones de entrada y salida.
Discutamos las ventajas de los paquetes en java hat son las siguientes:
- Los paquetes son útiles para organizar clases relacionadas con interfaces en un grupo. Esto reúne todas las clases e interfaces que realizan la misma tarea en el paquete. Por ejemplo, en Java, todas las clases e interfaces que realizan operaciones de entrada y salida se almacenan en el paquete java.io.
- Los paquetes ocultan las clases y las interfaces en un subdirectorio separado.
- Las clases e interfaces de un paquete están aisladas de las clases e interfaces de otro paquete.
tipos de paquetes
Hay dos tipos de paquetes en Java como se enumeran:
- Paquetes incorporados
- Paquetes definidos por el usuario
Tipo 1: paquetes incorporados
Estos son los paquetes que ya están disponibles en el lenguaje Java. Estos paquetes proporcionan casi todas las clases, interfaces y métodos necesarios para que el programador realice cualquier tarea. Son los siguientes:
- java.idioma
- java.util
- java.io
- java.awt
- javax.swing
- java.net
- java.applet
- java.texto
- java.sql
Tipo 2: paquetes definidos por el usuario
Al igual que los paquetes incorporados que se muestran anteriormente, el usuario del lenguaje Java también puede crear sus propios paquetes. Se denominan paquetes definidos por el usuario. Estos paquetes también pueden importarse a otras clases y usarse exactamente de la misma manera que los paquetes integrados.
Sintaxis: al crear un paquete, se usa la palabra clave del paquete
2.1.1 Para crear un paquete
package package_name ;
2.1.2 Para crear un subpaquete dentro de un paquete
package package_name.subpackagename ;
2.2 Compilar
C:\> javac -d . classname.java
2.3 Para ejecutar el programa
C:\> java packagename.classname
La sintaxis anterior es válida solo para Windows CMD shell, para rlinux y mac zsh shell, consulte los medios a continuación como se percibe de la misma manera que se proporciona a continuación.
Implementación:
Ahora dividamos la clase en paquetes.
Paso 1: Defina una clase StudentData que contenga la siguiente información de un estudiante:
- ID : es una string que almacena la identificación única de cada estudiante
- Nombre : Es una string que indica el nombre del estudiante.
Tenga en cuenta que estos campos deben declararse privados.
Paso 2: cree otra clase StudentDataExtended con un atributo privado llamado ubicación (una string que almacena la ubicación del estudiante).
Paso 3: Ahora, en esta clase, defina un método addDetails() que almacene los detalles de los estudiantes; y un método printDetails() que genera los detalles de los estudiantes en el orden ordenado de su identificación.
Nota: ambas clases deben estar en diferentes paquetes.
Ilustración:
Enter the number of students : 2 Enter the details of Student 1 (id, name, location): B200 Ajay Hyderabad Enter the details of Student 2 (id, name, location): B100 Ramesh Hyderabad
The Student Details are: B100 Ramesh Hyderabad B200 Ajay Hyderabad
Ejemplo
Java
// Java Program Illustrating Dividion of Classes into // Packages where Class StudentData // which creates first package i.e pack1 // Importing package package pack1; // Main class public class StudentData { private String id; private String name; // Method 1 public void addStudentData(String id, String name) { // This keyword refers to current instance itself this.id = id; this.name = name; } // Getter setters Methods // Use getter methods so that we can // access private members for other packages public String getId() { return id; } public String getName() { return name; } }
Java
// Java Program Illustrating Dividion of Classes into // Packages where Class StudentDataExtended creates // Second package- pack2 and uses the first package // Importing packages package pack2; // Importing required classes // from pre-defined packages import java.io.*; import java.lang.*; import java.util.*; import pack1.*; // Main class class StudentDataExtended extends StudentData { private String location; public void addDetails(String id, String name, String location) { addStudentData(id, name); // This keyword refers to current object itself this.location = location; } // Method 1 public static void printDetails(TreeMap<String, StudentDataExtended> map) { // Iterating via for each loop for (String a : map.keySet()) { StudentDataExtended student = map.get(a); // Print ID and name of student System.out.println(student.getId() + " " + student.getName() + " " + student.location); } } // Method 2 // Main driver method public static void main(String[] args) { // Display message for asking input from user System.out.print("Enter the number of students : "); // Scanner class to read user input Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String buffer = sc.nextLine(); int count = 1; // Creating a TreeMap TreeMap<String, StudentDataExtended> map = new TreeMap<>(); while (n != 0) { System.out.println( "Enter the details of Student " + count + " (id, name, location):"); count++; String details = sc.nextLine(); String studentInfo[] = details.split(" "); StudentDataExtended student = new StudentDataExtended(); student.addDetails(studentInfo[0], studentInfo[1], studentInfo[2]); map.put(studentInfo[0], student); n--; } // Display message System.out.println("\nThe Student Details are:"); // Calling above method 1 to // print details of the students printDetails(map); } }
Producción:
Publicación traducida automáticamente
Artículo escrito por bhukyavasanthkumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA