为了账号安全,请及时绑定邮箱和手机立即绑定

Java 包名称验证

Java 包名称验证

慕标琳琳 2023-07-28 09:56:16
在Java文档中我发现包的命名约定应该是这样的:包名全部小写,以避免与类或接口的名称冲突。但我在 Java 和 Android 中看到过很多类,如下所示:import java.util.HashMap;import androidx.core.content.ContextCompat;import android.view.inputmethod.InputMethodManager;这里的标准是什么?这些例子是否偏离了惯例?
查看完整描述

4 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

那是因为

import java.util.HashMap;

Hashmap指的是类,而不是包。

其内容如下:

Hashmap是在包中找到的类java.util


这是有问题的实际包和类:

//img1.sycdn.imooc.com//64c3205f0001b8d114570434.jpg

查看完整回答
反对 回复 2023-07-28
?
FFIVE

TA贡献1797条经验 获得超6个赞

导入语句由部分组成,包名称和驻留在包中的实际类。例如,您的import

import java.util.HashMap;

实际上是说导入HashMap驻留在java.util包中的类。事实上,包名确实只由小写字母组成。但是,该类采用大驼峰式,这也是惯例。


查看完整回答
反对 回复 2023-07-28
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

你很困惑

import some.package.with.WhatEverClass

import some.package.with.*

换句话说:使用大写字母是因为 import 语句的最后一部分引用的是类而不是包。

这与您在 python 中可以执行的操作类似:

import re

将导入整个模块,而第一个 java 示例更像是

from foo import bar


查看完整回答
反对 回复 2023-07-28
?
ibeautiful

TA贡献1993条经验 获得超5个赞

你是对的,java中的包名都是小写的。然而,所讨论的例子是重要的而不是包。类中的包HashMap就像这个包java.util;

并且java.util.HashMap是完全限定的类名。导入时使用完全限定的类名(带包的类名)。


查看完整回答
反对 回复 2023-07-28
  • 4 回答
  • 0 关注
  • 148 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信