关于 java 语言中的 package 和 import 机制

关于 java 语言中的 package 和 import 机制:

1、为什么要使用 package?

package 是java中包机制。包机制的作用是为了方便程序的管理。

不同功能的类分别存放在不同的包下。(按照功能划分的,不同的软件包具有不同的功能。)

2、package 怎么用?

package 是一个关键字,后面加包名。例如:

package com.bjpowernode.javase.chapter17;

注意:pacakge 语句只允许出现在java源代码的第一行。

3、包名有没有命名规范?有

一般都采用公司域名倒序的方式(因为公司域名具有全球唯一性。)

包名命名规范:

公司域名倒序 + 项目名 + 模块名 + 功能名

4、对于带有 package 的 java 程序怎么编译?怎么运行?

采用之前的编译和运行不行了。

类名不再是:HelloWorld了。

类名是:com.bjpowernode.javase.chapter17.HelloWorld

复制代码
编译:
javac -d . HelloWorld.java
解释一下:
javac	负责编译的命令
-d	带包编译
.	代表编译之后生成的东西放到当前目录下(点代表当前目录)
HelloWorld.java	被编译的java文件名
表示将 java 文件带包编译到当前目录下

运行:
java com.bjpowernode.javase.chapter17.HelloWord
com.bjpowernode.javase.chapter17.HelloWord 表示类名(这个类名带包名)

5、关于 import 的使用:

import 什么时候使用?

A 类中使用 B 类。

A 和 B 类都在同一个包下。不需要 import。

A 和 B 类不在同一个包下。需要使用 import。

java.lang.*; 这个包下的类不需要使用 import 导入。

复制代码
import 怎么用?
import 语句只能出现在 package 语句之下,class 声明语句之上。
import 还可以采用星号 * 号的方式。

package 和 import

1、package

第一:package 出现在 java 源文件第一行。

第二:带有包名怎么编译? java -d . xxx.java

第三:怎么运行? java 完整类名

补充:以后说类名的时候,如果带着包名描述,表示完整类名。

如果没有带包,描述的话,表示简类名。

java.util.Scanner 完整类名。

Scanner 简类名。

2、import

import什么时候不需要?

java.lang 不需要。

同包下不需要。

其它一律都需要。

怎么用?

import 完整类名;

import 包名.*;

import java.util.Scanner; // 完整类名。

import java.util.*; // 这个效率不低,因为编译器在编译的时候,会自动把 * 变成具体的类名。

* 只代表某些类的名字。

相关推荐
武藤一雄4 小时前
C# 中精准锁定类型信息指南:typeof vs GetType()
开发语言·windows·c#·.net·.netcore
星辰_mya4 小时前
MVCC 与事务隔离:MySQL 如何实现“读不阻塞写”?
java·数据库·mysql·面试·架构
IAUTOMOBILE4 小时前
Qt 入门级开发实践:浅析基于 QTtest 项目的 C++ GUI 编程基础
开发语言·c++·qt
要开心吖ZSH4 小时前
MP4 转 WAV 音频转码方案详解(互联网医院病历AI实战-JAVE2方案)
java·ffmpeg
凸头4 小时前
从聊天机器人到业务执行者:Agentic Orchestration 如何重构 Java 后端体系
java·开发语言·重构
希望永不加班4 小时前
SpringBoot 跨域问题(CORS)彻底解决方案
java·spring boot·后端·spring
爱丽_4 小时前
AQS 的 `state`:volatile + CAS 如何撑起原子性与可见性
java·前端·算法
zhuhezhang4 小时前
一个用golang开发的文本对比工具
开发语言·后端·golang·wails
zxfBdd4 小时前
idea + spark 报错:object hy is not a member of package com.cmcc
java·ide·intellij-idea
攒了一袋星辰4 小时前
10万级用户数据日更与定向推送系统的可靠性设计
java·数据库·算法