第三次学JAVA再学不好就吃翔(part39)--package关键字
學習筆記,僅供參考
文章目錄
- 面向對象
- package關鍵字
- 不同包之間的訪問
面向對象
package關鍵字
-
為什么要有包
- 將字節碼(.class)進行分類存放
- 包其實就是文件夾
-
包的格式
- package 包名;
- 如果是多級包,用.分開即可
-
定義包的注意事項
- package語句必須是程序的第一條可執行語句
- package語句在一個JAVA文件中只能有一個
- 如果沒有package,默認表示無包名
- 舉個例子
當我們編譯之后,再運行,則會報錯錯誤: 找不到或無法加載主類 PackageTest1,那么我們該怎么做,才能正常如何運行呢?
我們找到PackageTest1.java編譯后產生的.class文件所在的文件夾:
打開cmd命令窗口,輸入如下命令,即可編譯PackageTest1.java文件:
編譯完之后,當前目錄下就會生成一個com文件夾,點開,發現里面還有一個goatbishop文件夾,再點開,里面有PackageTest1.class文件:
回到PackageTest1.java所在的文件夾下,再輸入如下命令,即可運行(注意,要寫包名.類名來運行):
這TM也太痛苦了,,,一直要這樣做么?
不!當我們利用eclipse去開發時,這些事情都會由eclipse代勞。
不同包之間的訪問
我們先看以下兩段代碼。
PackageTest2.java
package com.goatbishop;class PackageTest2 {public static void main(String[] args) {com.mypackage.Bunny0602 b = new com.mypackage.Bunny0602("Huang", 9);System.out.println(b.eat());} }如果兩個類在不同的包下,我們想在一個類中導入另一個類,則要寫類的全名,也就是包名.類名
Bunny0602.java
package com.mypackage;public class Bunny0602 {private String name;private int age;public Bunny0602() {}public Bunny0602(String name, int age) {this.name = name;this.age = age;}public void setName(String name) {this.name = name;}public String getName() {return name;}public void setAge(int age) {this.age = age;}public int getAge() {return age;}public void eat() {System.out.println("兔子吃提草");}}注意,我們要把該類以及該類的構造設為公共的,也就是public,否則其他包的類會則訪問。
編譯(注意要先編譯Bunny0602類,再編譯PackageTest2類):
查看編譯后生成的com文件夾下的文件:
很好,按照我們的設想,分別生成了兩個文件夾。
回到PackageTest2.java所在的文件夾下,運行:
perfect!
總結
以上是生活随笔為你收集整理的第三次学JAVA再学不好就吃翔(part39)--package关键字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 联通日租卡如何申请 联通日租卡申请流程
- 下一篇: php curl中x-www-form-