import static的用法

在头部使用的imoirt static ***方式叫做静态引入,在Java SE 1.5.0(JDK 5)引入的特性。

官方文档的介绍:

为了访问静态成员,有必要限定它们来自的类的引用。例如,必须这样使用:

double r = Math.cos(Math.PI * theta);

为了解决这个问题,人们有时会把静态成员放到一个接口中,并从这个接口继承。这是一个坏主意。问题是一个类的另一个类的静态成员的使用仅仅是一个实现细节。当一个类实现一个接口时,它就成为这个类的公共API的一部分。实现细节不应泄漏到公共API中。

静态导入构造允许无限制地访问静态成员, 而不从包含静态成员的类型继承。相反,该程序单独导入成员:

import static java.lang.Math.PI;

或集体:

import static java.lang.Math.*;

一旦静态成员导入了,他们可以这样使用:

double r = cos(PI * theta);

那么什么时候应该使用静态导入? 非常谨慎!只有当你试图声明本地副本的常量或滥用继承时才使用它。换句话说,当你需要频繁访问一个或两个类的静态成员时使用它。如果过度使用静态导入功能,则可能导致程序无法读取且无法维护,从而导致您导入的所有静态成员污染其名称空间。你的代码的读者(包括你,在你写了几个月后)不会知道静态成员来自哪个类。全部导入从一个类的静态成员可以是特别有害的可读性; 如果只需要一个或两个成员,请单独导入它们。使用适当的静态导入可以使程序更具可读性,通过删除重复类名称的写法。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值