>>分享孙卫琴的Java技术专稿和著作 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 24141 个阅读者 刷新本主题
 * 贴子主题:  【Java基础编程专题】用static修饰符进行静态导入的作用和语法 回复文章 点赞(0)  收藏  
作者:sunweiqin    发表时间:2017-07-04 09:53:19     消息  查看  搜索  好友  邮件  复制  引用

本文参考:
《Java面向对象编程》,作者:孙卫琴
《漫画Java编程》,作者:孙卫琴,杜聚宾

从JDK 5 开始引入了静态导入语法(import static),其目的是为了在需要经常访问同一个类的方法或成员变量的场合,简化程序代码。下面是一个未使用静态导入的例子:
class TestStatic {
  public static void main(String[] args) {
    System.out.println(Integer.MIN_VALUE);
    System.out.println(Integer.MAX_VALUE);
    System.out.println(Integer.parseInt("223"));
  }
}

以上代码需要频繁地访问System类的out成员变量,以及Integer类的一些静态成员。以下代码静态导入了System.out成员变量以及Integer类的所有静态成员,程序代码明显得到了简化,在程序中可以直接访问被导入的内容:

import static java.lang.Integer.*;
import static java.lang.System.out;

public class TestStatic {
  public static void main(String[] args) {
    out.println(MIN_VALUE);
    out.println(MAX_VALUE);
    out.println(parseInt("223"));
  }
}

值得注意的是,如果静态导入的内容过多,容易引起各种方法名字以及变量名字的冲突。如果明确地指定所导入的内容就可以减少这样的冲突。例如对于以上程序代码,可以把静态导入“java.lang.Integer.*”的语句改写为:

import static java.lang.Integer.MIN_VALUE;
import static java.lang.Integer.MAX_VALUE;
import static java.lang.Integer.parseInt;

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 admin 在 2022-03-15 14:46:10 重新编辑]
  Java面向对象编程-->输入与输出(下)
  JavaWeb开发-->JSP技术详解(Ⅱ)
  JSP与Hibernate开发-->立即检索和延迟检索策略
  Java网络编程-->用Axis发布Web服务
  精通Spring-->Vue CLI脚手架工具
  Vue3开发-->Vue组件开发高级技术
  【Vue.js技术专题】Vue组件的命名规则
  【Vue.js技术专题】Vue组件的单向数据流
  【Vue.js技术专题】自定义指令范例:v-drag指令
  【Spring Cloud Alibaba专题】GateWay的内置断言工厂
  【Spring Cloud Alibaba专题】Seata的架构
  【持久化专题】为什么JPA和Hibernate的持久化方法都抛出运行...
  【Spring专题】把Model的数据存放在session范围
  【Spring专题】用AOP和SLF4J输出日志的范例
  【持久化专题】用@Formula注解映射派生属性
  【持久化专题】Hibernate的配置文件
  【持久化专题】映射Bag包(值类型的集合)
  【JavaWeb专题】Tomcat与IIS集成详解
  《大话Java程序设计从入门到精通》写作花絮
  【Java基础编程专题】用内部类实现回调
  【Java基础编程专题】Java继承的利弊和使用原则
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。