Java包的静态导入 import static和import的区别

  • import static静态导入是JDK1.5中的新特性。
  • 一般导入类:import com.xxx.ClassName;
  • 静态导入:import static com.xxx.ClassName.*;
  • 这里多了个static、类名后面多了个.*,意思是导入这个类里的静态方法。当然,也可以只导入某个静态方法,只需要把*替换成方法名就行了。然后在这个类中,就可以直接用方法名调用静态方法,而不需要在方法名前加类名的方式来调用。

*example:

静态导入之前:

import  java.lang.System.out; 
import  java.lang.Integer.*; 
public class TestStatic { 
    public static void main(String[] args) { 
        System.out.println(Integer.MAX_VALUE); 
        System.out.println(Integer.toHexString(42)); 
    } 
}

静态导入之后

import static java.lang.System.out; 
import static java.lang.Integer.*; 
 
public class TestStaticImport { 
    public static void main(String[] args) { 
        out.println(MAX_VALUE); 
        out.println(toHexString(42)); 
    } 
}
* 下面是使用静态导入的几条原则:
  • 你必须说import static, 不能说static import。
  • 提防含糊不清的命名static成员。例如,如果你对Integer类和Long类执行了静态导入,引用MAX_VALUE将导致一个编译器错误,因为Integer和Long都有一个MAX_VALUE常量,并且Java不会知道你在引用哪个MAX_VALUE。
  • 你可以在static对象引用、常量(记住,它们是static 或final)和static方法上进行静态导入。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,068评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,011评论 18 399
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 5,430评论 0 3
  • 一、基本数据类型 注释 单行注释:// 区域注释:/* */ 文档注释:/** */ 数值 对于byte类型而言...
    龙猫小爷阅读 9,766评论 0 16
  • 有一滴翠绿 在我跑上楼梯的时候 就突然, 涌到我怀里。
    一抹茶色z阅读 1,950评论 1 1

友情链接更多精彩内容