Java学习苦旅(十一)——你好,买“包”不?

本篇博客将介绍Java里的包

什么是包

说到包,一般人脑子里就会出现LV呀,爱马仕呀,古驰呀。就像下面一样:

image-20220110110600816

image-20220110164413307

image-20220110164627986

但是,我们今天要了解的包可不是这些,而是Java里的包。Java中的包(package)是组织类的一种方式,而使用包的主要目的是保证类的唯一性。

导入包中的类

java已经有很多的类可供我们直接使用,比如:

public class TestDemo {
    public static void main(String[] args) {
        java.util.Date date = new java.util.Date();// 得到一个毫秒级别的时间戳
        System.out.println(date.getTime());
    }
}

当然,这段代码也可以写成这样:

import java.util.Date;

public class TestDemo {
    public static void main(String[] args) {
        Date date = new Date();
        System.out.println(date.getTime());
    }
}

如果需要使用java.util中的其他类,可以使用下面这行代码

import java.util.*

注:import可以导入一个具体的类,但不能导入一个具体的包。

但在某些情况下需要完整类名,例如:

import java.util.*;
import java.sql.*;
public class TestDemo {
    public static void main(String[] args) {
        java.util.Date date = new java.uitl.Date();
        System.out.println(date.getTime());
    }
}

静态导入

import static可以导入包中的静态的方法和字段。例如:

import static java.lang.System.*;
public class TestDemo {
    public static void main(String[] args) {
        out.println("hello");
    }
}

此时可以省略System,当然,这样的用法比较少。

把类放到包中

基本规则

  • 在文件的最上方加一个package语句指定该代码在哪个包中。
  • 包名需要尽量指定成唯一的名字, 通常会用公司的域名的颠倒形式
  • 包名要和代码路径相匹配。
  • 如果一个类没有package语句,则该类被放到一个默认包中。

操作步骤

image-20220120152833511

image-20220120153550956

com.bat.demo为包名。 包名一般都是小写。

image-20220120154046911

这样的话,一个包就创建好了。现在就可以在包中创建类了。

image-20220120154151124

假如类名为TestDemo1,那么就会出现如下的界面:

image-20220120154230223

此时在包里创建类就完成了。

包的访问权限控制

如果某个成员不包含 public 和 private 关键字,此时这个成员可以在包内部的其他类使用,但是不能在包外部的类使用。例如:Test和TestDemo1在同一个包里,则

包1

此时程序可以正常运行。

如果在不同的包里使用这个成员变量,那么程序就会出错。

包2

Test和TestDemo不在同一个包里,所以此时程序报错。

结尾

本篇博客到此结束。

上一篇博客:Java学习苦旅(十)——链表的奥秘

下一篇博客:Java学习苦旅(十二)——继承

  • 15
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值