18 Java中包机制(package、import)

 欢迎来到@一夜看尽长安花 博客,您的点赞和收藏是我持续发文的动力

对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何想要讨论的问题可联系我:3329759426@qq.com 。发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

    专栏:

文章概述:对包机制(package、import) 的介绍

关键词包机制(package、import)

本文目录

包机制(package、import)

package

JDK中的主要包

导入类import

静态导入

包机制(package、import)

包(package)相当于文件夹对于文件的作用。用于管理类、用于解决类的重名问题。

package

package的使用有两个要点:

  1. 通常是类的第一句非注释性语句。
  2. 包名:域名倒着写即可,便于内部管理类。

【示例】package的命名演示


com.oracle.test;

com.it.xiaoan.test;

com.it.xiaoan.view;

com.it.view.model;

注意事项

  • 写项目时都要加包,不要使用默认包。
  • com.gao和com.gao.car,这是两个完全独立的包。只是逻辑上看,后者是前者的一部分。

【示例】package的使用

package com.it.xiaoan;

public class Test {

    public static void main(String[ ] args) {

        System.out.println("helloworld");

    }

}

在IDEA项目中新建包

在src目录上单击右键,选择new->package

在package窗口上输入包名即可

即可在src下面看到包:

接下来,我们就可以在包上单击右键,新建类啦

JDK中的主要包

表 JDK中的主要包

Java中的常用包

说明

java.lang

包含一些Java语言的核心类,如String、Math、Integer、System和Thread。

java.awt

包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。

java.net

包含执行与网络相关的操作的类。

java.io

包含能提供多种输入/输出功能的类。

java.util

包含一些实用工具类,如定义系统特性、使用与日期日历相关的函数。

java.lang是一个核心包,包含了Java语言的基本类。这些类自动导入到每个Java程序中,因此你不需要显式地导入它们。例如,java.lang包中包含了StringSystemMathObjectInteger等类。因为这些类是非常基础且常用的,所以Java编译器默认会自动导入java.lang包。

在Java中,除了java.lang包是自动导入的,其他许多标准库包都需要显式导入

java.math.BigInteger类是位于java.math包中的一个类,用于进行任意精度的整数运算。这个包不属于核心包java.lang,因此需要显式导入。

例如:

package basic_value;

import java.math.BigInteger;//导入BigInterger类

public class BigIntegerExample {
    public static void main(String[] args) {
        //初始化类对象
        BigInteger bigInt1 = new BigInteger("123456789012345678901234567890");
        BigInteger bigInt2 = new BigInteger("987654321098765432109876543210");
        //调用类的方法
        BigInteger bigIntSum = bigInt1.add(bigInt2);
        BigInteger bigIntProduct = bigInt1.multiply(bigInt2);
        //输出显示
        System.out.println("BigInteger sum: " + bigIntSum);
        System.out.println("BigInteger product: " + bigIntProduct);
    }
}

import java.awt.Frame;
import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Scanner;

导入类import

如果要使用其他包的类,需使用import,从而在本类中直接通过类名来调用,否则就需要书写类的完整包名和类名。

注意要点

  • Java会默认导入java.lang包下所有的类,因此这些类我们可以直接使用。
  • 如果导入两个同名的类,只能用包名+类名来显示调用相关类:java.util.Date date = new java.util.Date();

静态导入

静态导入(static import): 其作用是用于导入指定类的静态属性和静态方法,这样我们可以直接使用静态属性和静态方法。(不用加类名了)

【示例】静态导入的使用


package com.it.xiaoan;

import static java.lang.Math.*;//导入Math类的所有静态属性和静态的方法

import static java.lang.Math.PI;//导入Math类的PI属性

public class Test2{

    public static void main(String [ ] args){
        System.out.println(PI);
        System.out.println(random());
    }
}

执行结果如图所示:

导入包问题:

java.lang包中包含了Math类。因为这些类是非常基础且常用的,所以Java编译器默认会自动导入java.lang包。不需要显式掉用。

有的是调用Math里的方法,Math 类中的方法都是静态方法。java.lang.Math 类提供了一组静态方法 这就不需要显式的调用,直接使用Math.funtion()即可(属性同理)

例如:int i = (int)(6 * Math.random()) + 1;//通过Math.random()产生随机数

(如果调用的话就可以不用接类名,直接引用这个方法或属性)

但有的调用的是Math下面的类,这就需要显式的调用

例如:import java.math.BigInteger;

大小写问题:

import java.math.BigInteger; 中的 java.math 是包名,它采用小写字母,而 BigInteger 是类名,它采用大写字母。

Math.random() 中的 Math 是一个类名,randomMath 类中的一个静态方法 ,所以Math要大写

  • 22
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值