资讯专栏INFORMATION COLUMN

Java包的基本概述

Baaaan / 1211人阅读

摘要:第七章包的基本概述起因在我们设计一个程序的时候尤其是多人合作,会写一些类来实现功能,但是往往会有重名的现象发生,为了解决这个问题,则专门设计了包。概念为了更好地组织类,提供了包机制,用于区别类名的命名空间。

第七章 7.1 包的基本概述 起因:
在我们设计一个程序的时候(尤其是多人合作),会写一些类来实现功能,但是往往会有重名的现象发生,为了解决这个问题,则专门设计了包。(还有其他作用,下述)

简单理解:不同的城市之间存在相同名字的小区,用城市名则可以区分这些重名小区,城市名就可以理解为上面的包,小区则可以看做是重名的类,通过这个前缀,解决了重名问题。

(1) 概念:

为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。

其实可以理解为就是文件夹,并且使用了树形目录的存储方式。

(2) 作用:

A:区分同名的类

B:对类进行分类管理

​ a:按照功能分——把功能相似或者相关的类或接口组织在同一个包中

​ b:按照模块分

(3) 包的定义:
package 包名;
//多级包用.分开
(4) 注意:

A:package语句必须在文件中的第一条有效语句

B:在一个java文件中,只能有一个package

(5)带包的编译和运行

掌握——自动式(Dos中)

javac -d . xxx.java
//可以使用 *.java代表当前目录下的所有源文件

//运行:
java 包名.HelloWorld

在ecplise、ideal等IDE中会自动的生成包名的结构

7.2导包

当你需要使用一个包中的成员的时候,我们就需要在 java 程序中导入该包

如果两个类在同一个包中,则不必导包

格式:
第一种:
//导入单个(推荐)
import 包名;

注意:我们用谁就导谁。(尽量少用星号* 如下)

第二种:
//导入java.io下的所有类(不推荐)
import java.io.*

注意:

//前两句是否能用最后一句代替
import java.lang.*;
import java.io.*;

import java.*;//无法代替上面两句,只能指向到单层的包中

注意:使用java.lang下的内容是不用导包的,具体可以查看 jdk-api

作用:

使用某一包中对应成员,并且简化书写

例如我们想使用java.io包下的BufferedReader

我们可以

import java.io.BufferedReader
BufferedReader in = new BufferedReader(new FileReader("foo.in")); 

如果没有使用import导包

我们在使用java类库的时候,就需要写出该类的全路径名称,明显代码过于冗长

java.io.BufferedReader in = new java.io.BufferedReader(new FileReader("foo.in")); 

7.3 权限修饰符

看完包的基本概念,我们也就理解了当初所讲权限修饰符的问题

本类 同一个包下 不同包下的子类 不同包下的无关类
public Y Y Y Y
protected Y Y Y
默认 Y Y
private Y
这四种权限修饰符在任何情况下只能出现一种
结尾:

如果内容中有什么不足,或者错误的地方,欢迎大家给我留言提出意见, 蟹蟹大家 !^_^

如果能帮到你的话,那就来关注我吧!(系列文章均会在公众号第一时间更新)

在这里的我们素不相识,却都在为了自己的梦而努力 ❤

一个坚持推送原创Java技术的公众号:理想二旬不止

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74861.html

相关文章

  • 第五章-Java修饰符#yyds干货盘点#

    摘要:修饰符包包的概述和使用其实就是文件夹作用对类进行分类管理包的定义格式格式包名多级包用分开范例带包的类编译和执行手动建包按照以前的格式编译文件手动创建包建立文件夹然后在下建立文件夹把文件放到包的最里面把文件放到下的这个文件夹下带包 1 修饰符1.1 包1.1.1 包的概述和使用其实就是文件夹作用:对类进行分类管理...

    caspar 评论0 收藏0
  • Burp Suite抓包讲解

    摘要:环境运行时依赖,需提前安装环境。抓包就是将网络传输发送与接收的数据包进行截获重发编辑转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。 目录 Bur...

    不知名网友 评论0 收藏0
  • java学习(三) —— 面对对象

    摘要:前言是面对对象的语言,因此有必要单独纪录下对象的各种定义和理解。面对对象基本概述概述是基于面向过程的变成思想,是对面向过程的一种封装。面对对象开发就是不断的创建对象,使用对象,指挥对象做事情。面对对象设计其实就是在管理和维护对象之间的关系。 前言 java是面对对象的语言,因此有必要单独纪录下对象的各种定义和理解。 面对对象,主要包括:面向对象思想,类与对象及其使用,对象的内存图,成...

    褰辩话 评论0 收藏0
  • 1、final 关键字 2、static 关键字 3、匿名对象 4、内部类 5、包的声明与访问 6、

    摘要:可以直接用接口名访问。其他类也称为外部类。汽车外部类发动机内部类内部类的分类内部类分为成员内部类与局部内部类。我们定义内部类时,就是一个正常定义类的过程,同样包含各种修饰符继承与实现关系等。并且日常项目的分工也是以包作为边界。 01final关键字概念 * A: 概述 继承的出现提高了代码的复用性,并方便开发。但随之也有问题,有些类在描述完之后,不想被继承, ...

    邹立鹏 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<