博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
廖雪峰Java2面向对象编程-5包和classpath-1包package
阅读量:4321 次
发布时间:2019-06-06

本文共 919 字,大约阅读时间需要 3 分钟。

1.package的意义

如下,存在多个相同类名的文件。当引用Person类,将无法确定引用小红,还是小明的Person类,即同名类的冲突。

小明的Person类:Person    小红的Person类:Person    小军的Arrays类:Arrays    JDK的Arrays类:Arrays

package就是用来解决类名冲突的。

  • Java定义了名字空间:package 包
  • 对于任何一个类,其完整类名是:包名 + 类名.
  • JVM 只看完整类名,因此,只要确保包名不同,类就不同.
小明的Person类放在xiaoming的包中,其Person的完整类名是:xiaoming.Person小红的Person类放在xiaohong的包中,其Person的完整类名是:xiaohong.Person小军的Arrays类放在xiaojun的包中,其Arrays的完整类名是:xiaojun.ArraysJDK的Arrays类放在java.util的包中,其Arrays的完整类名是:java.util.Arrays
  • 包可以是多层机构 java.util.Arrays
  • 包没有父子关系 java.util和java.util.zip是不同的包,两者没有任何关系

JVM加载class并执行代码时,总是使用class的完整类名。因此JVM看到的都是完整类名。

xiaoming.Person
java.lang.String
java.util.Arrays
Hello(没有定义package,不推荐)

包作用域:不用public、protected、private修饰的字段和方法就是包作用域

位于同一个包的类,可以访问包作用域的字段和方法

1.引用其他类

使用完整类名
java.util.Arrays.sort(ns);

先import,再使用类名

import java.util.Arrays;
Arrays.sort(ns);
可以使用,不推荐
import java.util.
Arrays.sort(ns)

转载于:https://www.cnblogs.com/csj2018/p/10281635.html

你可能感兴趣的文章
软件工程博客---团队项目---个人设计4(算法流程图)
查看>>
数据结构3——数组、集合
查看>>
坚定信心
查看>>
C++中 <iso646.h>头文件
查看>>
spring cloud: Hystrix(六):feign的注解@FeignClient:fallbackFactory(类似于断容器)与fallback方法...
查看>>
CISCO 动态路由(OSPF)
查看>>
vue.js实现移动端长按事件,处理长按事件和click事件冲突,长按安卓机支持震动...
查看>>
个人开发—进度记录(十一)
查看>>
java中JVM的原理
查看>>
php这是一个随机打印输出字符串的例子
查看>>
前端的图片压缩image-compressor(可在图片上传前实现图片压缩)
查看>>
20165309 实验四 Android程序设计
查看>>
团队博客目录
查看>>
linux的启动流程
查看>>
摩尔斯电码(Morse Code)Csharp实现
查看>>
C#NULL条件运算符
查看>>
使用GZIP压缩网页内容(一)
查看>>
《深入浅出MFC》第二章 C++的重要性质
查看>>
关于智能硬件设备shell安全设计
查看>>
homework1
查看>>