package和import
當java類都是放在同一個目錄下的時候,類之間的相互調用無需顯式聲明調用
同一個目錄下,兩個類的名字不能相同
文件過多,查找和修改都不易,且容易出錯。
java支持多個目錄放置java,并且用過package/import/classpath、jar等級制配合使用,可以支持跨目錄放置和調用java類
package包,和c++中的namespace類似,
在java類文件中的第一句話給出包的名稱
類全稱(長名稱)=包名稱+類名
短名稱=類名
類全稱cn.edu.ecnu.PackageExample,短名稱PackageExample
引用類的時候,必須采用全稱引用;程序正文可以用短名稱
PackageExample.java必須嚴格放置在cn/edu/ecnu目錄下
包名package name 要唯一
在PackageExampleTest.java中,可用import關鍵字來引入PackageExample類
cn.edu.ecnu是測試類PackageExample的包名
import相當于c++中的include
import有兩種寫法:①import cn.edu.ecnu.PackageExample
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ②import cn. edu.ecnu.*,不能import cn.*,*代表目錄下的所有文件,但不包括子文件夾
?
import規則
import必須全部放在package之后,類定義之前(差不多是代碼的第二行)
package必須是第一句話
多個import的順序無關
可以用*來引入一個目錄下的所有類(但不包括它們的子類),也就是說不能遞歸包含各個目錄下的文件
import盡量精確,不推薦使用*,以免新增的同名程序會使得老程序報錯
例一:
package com.text;public class NewExample {public void hello() {System.out.println("hello");}; } package net.abc;import com.text.NewExample;public class NewExampleTest {public static void main (String[] a) {new NewExample().hello();}}在NewExampleTest中調用另一個包中的NewExample類。
例二:
package a;public class Man {} package b;public class Man {} package c;import a.*; import b.*;public class Test {public static void main(String[] args) {a.Man m = new a.Man();//當程序中存在多個import* //(即調用多個目錄所有文件),將面臨著調用類指代不清的風險}} /*交代不清有兩種解決方法,①:在調用的時候指明調用的是什么即a.man ②:在import的時候,刪除一個,用另一個的時候用b.Man調用 程序中需要引用多個同名的類,那么只能import其中一個, 并可用類名調用。 其他的類必須用全稱(類名加包名)調用。*/import的應用。
?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的package和import的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 废旧纸箱做机器人图片_制作纸箱板画(适合
- 下一篇: PIC在线升级源码分析