学习Java的~package~

我一直以来都想从无经验转职为工程师,但最近我终于成功地得到了一份内定!因为我将在新工作中使用Java语言,所以我想逐渐开始进行输出学习并发布一些内容。(这也是为了学习Java Silver!)

“包裝(package)是指”

由于Java是一种面向对象的语言,所以有可能需要创建很多类。为了将这些类按功能进行分类,使用的机制是包(package)。

包裝的目的

①通过提供命名空间,避免名称冲突。
②提供访问控制功能。
③实现类的分类。

在中国的本土语言中,以下是一种方式来改写:

包的声明方式

package practice;
//package + 好きなパッケージ名;

此外,由于包可以创建层次结构(类似于目录),在这种情况下,您可以使用“。”从上一层层级开始连接并进行描述。

package practiceA.practiceB.practiceC;
顺便说一下…

如果不进行包声明,将被判定为匿名包。因此,不存在不属于任何包的类。
我认为除了”package”外,还有可能声明”import”,但是必须在”package”之前进行,否则会发生编译错误。(只有注释可以在”package”之前进行声明。)

调用包中的类。

如果调用属于同一个包的类,则只需要使用类名即可;但是如果要调用属于其他包的类,则需要使用”完全限定名”(即包名.类名)来进行调用。

//java.testパッケージに属するTestクラスを呼び出したい場合
package java.practice;
 
class Practice{
    
   public static void main(String[] args){
        
       java.test.Test test = new java.test.Test();
       //Testクラスをインスタンス化(この記述の際にも完全修飾名を使用する)
        
   }
 
}

在上述的方法中,由于每次都需要繁琐的编写,还有一种方法可以使用import声明!

package java.practice;
 
import java.test.Test;
 
class Practice{
    
   public static void main(String[] args){
        
       Test test = new Test();
       //クラス名だけで別のパッケージに所属するクラスをインスタンス化できる。
        
   }
 
}

通过访问修饰符实现访问控制。

package java.test;
 
public class Test{
    //publicが付いている為、外部のパッケージに属するクラスからアクセスができる
}
package java.test;
 
class Test{
    //publicが付いていない為、外部のパッケージに属するクラスからアクセスができない
}

整理

用了很久的包裹,竟然有这么多规则和优点,真是没想到!如果有错误或遗漏之处,请在评论中指出!非常感谢您的阅读(^^)

广告
将在 10 秒后关闭
bannerAds