Java里的static import使用小结

作者:junjie 时间:2023-08-18 18:36:36 

换了工作要把Java重新捡起来了,这个在大学里用过的语言,虽然不复杂,还是有一些奇怪的地方的。比如static import。

Static import是JDK 1.5中引进的特性,不过读大学那会还真没注意到。它的作用是把静态(static)的方法或者常量import进来。比如:


import static java.lang.Math.*;

public class HelloWorld {
public static void main(String[] args) {
 System.out.println("Hello World!");
 System.out.println("Considering a circle with a diameter of 5 cm, it has:");
 System.out.println("A circumference of " + (Math.PI * 5) + " cm");
 System.out.println("And an area of " + (Math.PI * Math.pow(2.5,2)) + " sq. cm");
}
}

使用了static import之后,就可以写成:


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

public class HelloWorld {
public static void main(String[] args) {
 out.println("Hello World!");
 out.println("Considering a circle with a diameter of 5 cm, it has:");
 out.println("A circumference of " + (PI * 5) + " cm");
 out.println("And an area of " + (PI * pow(2.5,2)) + " sq. cm");
}
}

注意”Math.”和”System.”可以省略掉了。

Static import和import的规则类似,引用的内容不可以有歧义。

使用了static import,代码会变短,增加了可读性,但一定程度上会对代码整体的理解造成困难,因为常量和静态方法看上去像全局变得和全局方法了,有点C++的味道,失去了一些OO的美感。

标签:Java,static,import
0
投稿

猜你喜欢

  • C#设计模式之建造者模式生成器模式示例详解

    2021-12-11 05:50:57
  • 继承JpaRepository后,找不到findOne()方法的解决

    2022-08-26 18:33:26
  • Android 情景模式的设置代码

    2023-09-23 07:26:37
  • springboot连接不上redis的三种解决办法

    2022-03-21 20:57:23
  • Java @GlobalLock注解详细分析讲解

    2023-06-03 03:55:53
  • 详解Spring Security中的HttpBasic登录验证模式

    2023-12-03 03:58:14
  • 使用SpringBoot配置https(SSL证书)

    2022-04-03 19:37:00
  • 教你使用Java获取当前时间戳的详细代码

    2021-09-19 04:41:02
  • 详解C#开发Android应用程序的流程

    2021-08-11 21:32:59
  • android获取当前运行Activity名字的方法

    2023-11-07 16:03:45
  • 超详细讲解Java异常

    2023-10-02 07:30:16
  • 老生常谈ProgressBar、ProgessDialog的用法

    2022-05-02 16:08:58
  • 剑指Offer之Java算法习题精讲二叉树与N叉树

    2023-04-22 00:20:42
  • C#使用System.Net邮件发送功能踩过的坑

    2022-09-09 18:16:11
  • Android中的广播和广播接收器代码实例

    2021-09-04 06:44:22
  • Kotlin标准函数与静态方法基础知识详解

    2021-12-18 08:12:13
  • Java使用原型模式展现每日生活应用案例详解

    2023-03-08 04:27:08
  • Android PopupWindow实现遮罩层效果

    2022-02-04 13:28:46
  • 详解Java中的final关键字

    2023-02-20 17:29:50
  • SpringBoot中Shiro缓存使用Redis、Ehcache的方法

    2023-10-04 17:34:59
  • asp之家 软件编程 m.aspxhome.com