看这么一个文件结构:

1 package zcy.android
2 {
3 class TextView
4 {
5 //...
6   }
7 class Button
8 {
9 //...
10   }
11
12 package widget
13 {
14 class View
15 {
16 //...
17 }
18 class TextView extends View
19 {
20 //...
21 }
22 }
23 }

上面出现的4个类都包含在包zcy.andrid中,但我们把3、7行的TextView类Button类称之为“直属”于包zcy.android,而14、18行的View和TextView类“直属”于zcy.android.widget包。

如果我们另外新建了一个project,代码开头没有import任何包,而在代码中突然出现了TextView,那就会报错,因为编译环境不认识TextView是个啥玩意儿。有人会问:我编程的时候什么包也没有引入,但是当我使用String类时为什么没有报错呢?这是因为任何Java程序都默认地引入了java.object.lang(这是java中所有类的祖先),而像String,Integer,Float这些类都"直属“于lang。

当你import zcy.android.*后,出现TextView编译环境就知道你用的是第3行的那个TextView类,而当出现View时还是不认识它,因为编译环境只会从zcy.android的直属类中去搜索View类是否存在。

当你import zcy.android.Button后还是不认识TextView。

同理,当你import zcy.android.widget.*后,出现TextView编译环境就知道你用的是第18行的那个TextView类。

当你同时import zcy.android.*;import zcy.android.widget.*;后,代码中出现TextView编译环境就困惑了,同样会报错。但是我们又必须同时引入这两个包,因为我们想使用Button和View这两个类。解决办法是在类名前加上包名作为前缀:android.TextView tv1=new android.TextView();widget.TextView tv2=new widget.TextView();当然你也可以写android.Button b=new android.Button();但对于Button和View没有必要加前缀。

import package怎么用相关推荐

  1. java classpath import package 机制 @Java的ClassPath, Package和Jar

    java classpath import package 机制 從一個簡單的例子談談package與import機制 基本原則:為什麼需要將Java文件和類文件切實安置到其所歸屬之Package所對 ...

  2. 【Unity3D 问题总结】Failed to import package with error: Couldn‘t decompress package

    报错问题:Failed to import package with error: Couldn't decompress package 今天在导入一个资源包的时候突然提示报错:Failed to ...

  3. Import Package

    Import Package:可以导入已有的资源包或者加载相同末日提供的资源包 Custom Package...:导入自定义数据包 Character Controller:导入角色控制资源包 Gl ...

  4. Unity import package不显示标准资源包的问题(只有Custom Packag)

    Unity import package不显示标准资源包的问题,如下图: 办法:在asset store里搜索Standard Assets选择导入即可,如下图: 嘿嘿!有用的话点个赞呗!

  5. import package的问题

    在新建class的时候除了名字还可以选择包名: 新建2个包名,然后在不同的包里写2个同名的类, 程序中导入另外一个包 package com.hs; import com.hy.Father; 当直接 ...

  6. import package java_java初学者,如何理解package和import?

    对于初学者 java执行工具.javac编译工具:sourcepath.classpath环境变量 :import关键字 .package关键字 :java文件.class文件.jar文件这些东西混淆 ...

  7. python 导包语法 import package as name 和 from package import name 的区别

    今天在导包的时候: # from easydict import EasyDict as edict # 成功 # import easydict.EasyDict as edict # 失败 结果: ...

  8. Unity之Failed to import package with error: Couldn‘t decompress package

    一.背景 小伙伴们在导入Unity官方商店资源时,会不会出现这个问题呢? 二.解决方案 一.项目所在文件夹有足够空间来解压 二.unityPackage是否在中文路径下,请确保全部用英文 三.重新下载 ...

  9. Failed to import package with error: Couldn't decompress package的解决方案

    问题的出现 在Unity中导入一个Package文件,出现以下出错信息 解决方案 遇到这样的报错信息,一般就是要将该文件包的存储路径设置为英文,因为Unity不识别中文路径:其次对文件包的命名中间应没 ...

最新文章

  1. C++ 笔记(15)— 引用(声明引用、引用作为参数、引用作为函数返回值、const 用于引用)
  2. 【 MATLAB 】Fourier Analysis and Filtering frame(傅立叶分析和滤波 框架)
  3. 原生JS DOM操作方法汇总
  4. Apache Kylin v2.6.1 发布,开源的分布式分析引擎
  5. shopee本土店怎么做,一些运营技巧分享
  6. 工艺路线和工序有差别吗_智能制造、数字化车间、数字化企业需要结构化工艺吗?...
  7. 安装HCL模拟器遇到的问题标题文章
  8. 1.8 编程基础之多维数组 08 矩阵加法 python
  9. 表格状态列_不用软件也能做好多个项目跟进管理?我用一个协同表格就搞定
  10. SDK 可能是数百万 iPhone 上的特洛伊木马
  11. 判断用户输入的是数字还是字符串
  12. 汇编中的int 10h 与int 19h
  13. 键盘按键发出声音,打不了字,提示启用筛选键
  14. 2019六月广东省计算机二级报名,广东2019年3月全国计算机二级考试报名时间通知...
  15. vue元素显示隐藏 v-if 和 v-show 指令
  16. Win 7中excel 2016未响应
  17. 巨头思科生死迷:错失重要时机 辉煌皆成尘土
  18. 【Lilishop商城】No4-2.业务逻辑的代码开发,涉及到:会员B端第三方登录的开发-平台注册会员接口开发
  19. android 齿轮动画,Android仿正点闹钟时间齿轮滑动效果
  20. offsetParent解释

热门文章

  1. 采用truelicense进行Java规划license控制 扩展可以验证后,license 开始结束日期,验证绑定一个给定的mac住址...
  2. RS请求错误之RSV-BBP-0028
  3. Linux Oracle服务启动停止脚本与开机自启动
  4. jquery中常容易出错的checkbox的获得值
  5. EXCEL 制作万年历
  6. 「每天一道面试题」谈String和StringBuffer、StringBuilder区别
  7. Spring bean注入方式
  8. Android 自己主动化測试之------ Monkey工具
  9. (并查集)How Many Tables -- HDU --1213
  10. 虚函数virtual