📜  Java中的内置包

📅  最后修改于: 2022-05-13 01:55:26.530000             🧑  作者: Mango

Java中的内置包

Java中的用于避免命名冲突和控制类、接口、子类等的访问。一个包可以定义为一组相似类型的类、子类、接口或枚举等。使用包可以更容易地定位或查找相关的类和包,它提供了具有大量类和文件的项目的良好结构或大纲。

包分为两部分:

  • 内置包:在Java中,我们已经有各种预定义的包,这些包包含大量我们在Java中使用的类和接口,称为内置包。
  • 用户定义包:顾名思义,用户定义包是由用户或程序员定义的包。

内置包

您下载的 JDK 或 JRD 附带的包称为内置包。内置包以JAR文件的形式出现,当我们解压JAR文件时,我们可以很容易地看到JAR文件中的包,例如lang、io、util、SQL等Java提供了各种内置包例如Java.awt

Java 内置包

现在让我们讨论一些内置包。

内置包的示例

  • Java.sql :提供用于访问和处理存储在数据库中的数据的类。 Connection、DriverManager、PreparedStatement、ResultSet、Statement 等类是这个包的一部分。
  • Java.lang :包含Java编程语言设计的基础类和接口。 String、StringBuffer、System、Math、Integer 等类是此包的一部分。
  • Java.util :包含集合框架、一些国际化支持类、属性、随机数生成类。 ArrayList、LinkedList、HashMap、Calendar、Date、Time Zone 等类是这个包的一部分。
  • Java.net :提供用于实现网络应用程序的类。 Authenticator、HTTP Cookie、Socket、URL、URLConnection、URLEncoder、URLDecoder 等类是这个包的一部分。
  • Java.io :为系统输入/输出操作提供类。像 BufferedReader、BufferedWriter、File、InputStream、OutputStream、PrintStream、Serializable 等类是这个包的一部分。
  • Java.awt :包含用于创建用户界面和绘制图形和图像的类。 Button、Color、Event、Font、Graphics、Image 等类是这个包的一部分。

让我们用代码讨论一些上面提到的例子

Java。 awt 包

这个包是抽象窗口套件的主包。它包括图形类,包含Java 2D 图形,它还定义了Java的图形用户界面 (GUI) 框架。这个包有几个沉重的 GUI 对象,属于Java。秋千包

Java
import java.awt.*;
public class AWTExample{
  AWTExample()
  {
    Frame fr1=new Frame(); 
    Label la = new Label("Welcome to the java graphics GEEKSFORGEEKS"); 
    fr1.add(la);                
    fr1.setSize(200, 200); 
    fr1.setVisible(true);  
  }
  public static void main(String args[])
  {
    Testawt tw = new Testawt();
  }
}


Java
// using DatagramSocket under java.net package
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
 
public class UDP {
    public static void main(String[] args)
        throws IOException
    {
        // Create a socket to listen at port 4567
        int port_no = 4567;
        DatagramSocket ds = new DatagramSocket(port_no);
        byte[] receive = new byte[65535];
        DatagramPacket DpReceive = null;
 
        while (true) {
            // create a DatgramPacket to receive the data.
            DpReceive = new DatagramPacket(receive,
                                           receive.length);
            // receive the data in byte buffer.
            ds.receive(DpReceive);
            System.out.println("DATA:- " + data(receive));
            // Clear the buffer after every message.
            receive = new byte[65535];
        }
    }
}


Java
import java.sql.*;
 
public class JavaSQL {
    
   static final String URL = "jdbc:mysql://localhost/Geeksforgeeks";
   static final String USER = "user";
   static final String PASSWORD = "123";
   static final String QUERY = "SELECT ID, NAME, ADDRESS FROM STUDENTS";
   
   public static void main(String[] args) {
      // Open a connection
      try(
         Connection con = DriverManager.getConnection(URL, USER, PASSWORD);
         Statement stm = con.createStatement();
         ResultSet rs = stm.executeQuery(QUERY);) {
          
        while (rs.next()) {
            // Retrieving data from column name
            System.out.print("ID: " + rs.getInt("id"));
            System.out.print(",NAME: " + rs.getInt("name"));
            System.out.println(",ADDRESS: " + rs.getString("address"));
         }
      } catch (SQLException e) {
         e.printStackTrace();
      }
   }
}


Java
import java.lang.*;
 
 class example_lang {
   public static void main(String args []) {
      int a = 100, b = 200,maxi;
      maxi = Math.max(a,b);
      System.out.printf("Maximum is = "+maxi);
    }
 }


Java
import java.io.Console;
  
 class example_io {
    
   public static void main(String args []) {
      Console cons = System.console();
      System.out.println("Enter your favorite color");
      String colour ;
      colour = cons.readLine();
      System.out.println("Favorite colour is " + colour);
    }
 }


Java
import java.util.Arrays;
 
public class MyClass {
    public static void main(String args[]) {
      int[] arr = { 40, 30, 20, 70, 80 };
      Arrays.sort(arr);
      System.out.printf("Sorted Array is = "+Arrays.toString(arr));
    }
}


输出:

在上述示例中,我们使用 awt 包创建了一个大小为 200 x 200 的框架,然后打印一条消息“Welcome to the Java graphics GEEKSFORGEEKS.

Java.net 包

该包包含用于网络的类和接口,如 Socket 类、ServerSocket 类、URLConnection 类、DatagramSocket、MulticastSocket 等Java支持两种网络协议,如 TCP(传输控制协议)和 UDP(用户数据报协议,这是一个连接-更少的协议)。

Java

// using DatagramSocket under java.net package
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
 
public class UDP {
    public static void main(String[] args)
        throws IOException
    {
        // Create a socket to listen at port 4567
        int port_no = 4567;
        DatagramSocket ds = new DatagramSocket(port_no);
        byte[] receive = new byte[65535];
        DatagramPacket DpReceive = null;
 
        while (true) {
            // create a DatgramPacket to receive the data.
            DpReceive = new DatagramPacket(receive,
                                           receive.length);
            // receive the data in byte buffer.
            ds.receive(DpReceive);
            System.out.println("DATA:- " + data(receive));
            // Clear the buffer after every message.
            receive = new byte[65535];
        }
    }
}

输出

DATA:- //whatever to get from server 

在上述示例中,我们实现了一个 UDP 套接字接收器,它通过端口号从服务器端接收数据。首先,我们使用 DatagramSocket 方法创建了一个套接字来监听 4567 端口,其次,我们创建了一个数据报包来接收字节缓冲区中的数据,最后在获得数据后我们将其打印出来。

Java.sql 包

该包包含提供和执行所有 JDBC 任务(如创建和执行 SQL 查询)的类和接口。它包括一个框架,可以动态安装不同的驱动程序以访问不同的不同数据库,它还提供了用于访问和处理存储在数据库中的数据库的 API。

Java

import java.sql.*;
 
public class JavaSQL {
    
   static final String URL = "jdbc:mysql://localhost/Geeksforgeeks";
   static final String USER = "user";
   static final String PASSWORD = "123";
   static final String QUERY = "SELECT ID, NAME, ADDRESS FROM STUDENTS";
   
   public static void main(String[] args) {
      // Open a connection
      try(
         Connection con = DriverManager.getConnection(URL, USER, PASSWORD);
         Statement stm = con.createStatement();
         ResultSet rs = stm.executeQuery(QUERY);) {
          
        while (rs.next()) {
            // Retrieving data from column name
            System.out.print("ID: " + rs.getInt("id"));
            System.out.print(",NAME: " + rs.getInt("name"));
            System.out.println(",ADDRESS: " + rs.getString("address"));
         }
      } catch (SQLException e) {
         e.printStackTrace();
      }
   }
}

输出

ID: 1, NAME: Harry, ADDRESS: India
ID: 2, NAME: Jhon, ADDRESS: USA
ID: 3, NAME: Kim, ADDRESS: USA
ID: 4, NAME: Bob, ADDRESS: India

在上面的例子中可以看到,首先我们导入了包名Java.*,在main方法中我们初始化了字符串变量名URL、USER、PASSWORD、QUERY。然后使用 DriverManager 连接到数据库。最后,我们使用 executeQuery 方法执行从数据库中选择数据的查询。

Java.lang 包

这个包包含Java语言的核心类。这个包是自动导入到每个程序中的,也就是说我们可以在我们的程序中直接使用这个包的类。让我们举一个 lang 包的 Math 类的例子,它提供了各种数学运算的函数或方法。

Java

import java.lang.*;
 
 class example_lang {
   public static void main(String args []) {
      int a = 100, b = 200,maxi;
      maxi = Math.max(a,b);
      System.out.printf("Maximum is = "+maxi);
    }
 }
输出
Maximum is = 200

在上述示例中,我们使用 lang 包和 Math 类使用“max”函数找到两位数的最大值。首先,我们创建了一个名为“a”和“b”以及 maxi 的三个整数变量。其中 a = 100 和 b = 200 并且 maxi 将存储来自 a 或 b 的最大值。在为变量赋值后,我们使用 max函数找到最大值并将其存储在 maxi 中。所以在期望的输出中,我们最多可以看到两个数字,即 200。

Java.io 包

这个包提供了用于处理系统(输入/输出)的类和接口。使用这些类,程序员可以从用户那里获取输入并对其进行操作,然后将输出显示给用户。除此之外,我们还可以使用此包的类执行文件处理读取或写入。

Java

import java.io.Console;
  
 class example_io {
    
   public static void main(String args []) {
      Console cons = System.console();
      System.out.println("Enter your favorite color");
      String colour ;
      colour = cons.readLine();
      System.out.println("Favorite colour is " + colour);
    }
 }

输出

Enter your favorite color
RED
Favorite color is RED

在上面的例子中,我们使用Java.io 包和 Console 类来获取用户的输入,对它执行一些任务或操作,最后在控制台上显示结果。正如代码首先所说,我们显示消息“输入您最喜欢的颜色”,要求用户输入颜色。用户系统使用 cons.readLine() 读取该行并将其存储在字符串类型变量中,然后最终显示该行。

Java.util 包

这个包为Java程序员提供了基本的必要的东西。这个包中最常见的类是数组,程序员通常在各种情况下使用它。可以说它是Java中最有用的包,因为它有助于通过使用预先编写的类轻松实现不同类型的需求。让我们看看 Arrays 类的例子。

Java

import java.util.Arrays;
 
public class MyClass {
    public static void main(String args[]) {
      int[] arr = { 40, 30, 20, 70, 80 };
      Arrays.sort(arr);
      System.out.printf("Sorted Array is = "+Arrays.toString(arr));
    }
}

输出:

Sorted Array is = [20, 30, 40, 70, 80]

在上述示例中,我们使用了Java。 util 包和 Arrays 类对整数数组进行排序。首先,我们创建了一个由元素 40、30、20、70、80 组成的整数类型数组,并使用 Arrays 类的“排序”函数对数组进行排序。对数组进行排序后,我们将打印排序后的数组,您可以在所需的输出中看到它。