包导入

Posted weixingyuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了包导入相关的知识,希望对你有一定的参考价值。

与包访问的相关规则

  1. 每个源代码文件只能有一个公有类,并且文件名必须与该公有类名称相同

  2. package语句必须在源代码的第一行,并且一个源文件只能有一句

  3. 导入语句位于package语句和类声明之前

  4. 导入的包应用于源代码文件的所有类

  5. 每个源代码只能有一个package语句

  6. 导入的包必须使用全称名称

  7. 导入语句不会引起性能损失,也不会增加代码长度

  8. 导入语句可以与全称类名共存

  相同名的类导入

  当有两个相同名字的类导入的时候,例如:

    import com.yuan.Fruit;

    import com.yuan.xing.Fruit;

 

  这样如果在new的时候Fruit f1 = new Fruit();这样使得编译器不知道这个Fruit是哪个Fruit。

  有两种解决方法。

    1. 使用一条import语句,导入那个更频繁使用的类。另一个使用时用全名称导入。

    2. 在整个代码中使用全称名称。

 

使用通配符

  当使用 “*”进行导入时候,则会把包中的所有类都导入到源文件中,使得源文件可以使用包中所有的类,例如import java.awt.*;这样就把awt中所有的类都导入到源文件中,使得源文件可以使用java.awt包中所有的类。

 

  当有两个相同的类,比如使用java.awt.List和java.util.List如果使用java.awt.*,和java.util.*;这样编译就会报错,使得编译器不知道要使用哪个List,所以这样必须使用全名称构造对象,java.awt.List  list1 = new java.awt.List();

 

格式化main()方法

  主方法方法名是固定的都是public static void main(String[] args){}(除了String后的变量名),没有正确的main()方法是一个运行时错误,而不是编译时错误。如果没有main()方法,语法正确编译将不会报错。

  当拥有任意多个命名为main()的方法(或者一个都没有),没有一个方法与JVM查找的main()方法相匹配,则将不能使用该类的名称调用java来运行该类。(但是仍然能实例化该类并调用其他方法,main方法只是用与启动虚拟机和引导程序)

  当具有合法的、非静态的main()方法的类只能通过编译、其他代码调用方法,但是如果遇到该类调用JVM时,这个非静态方法将会在运行时出现错误。

 

 

 

以上是关于包导入的主要内容,如果未能解决你的问题,请参考以下文章

java如何导入包

AndroidStudio怎样导入jar包

如何导入jar包?如何在IDEA中导入jar包

AndroidStudio怎样导入jar包

AndroidStudio怎样导入jar包

怎么把本地spring jar包导入maven