`

静态导入Static import

    博客分类:
  • java
 
阅读更多
http://www.cnblogs.com/mengdd/archive/2013/01/23/2873312.html

要使用静态成员(方法和变量)我们必须给出提供这个静态成员的类。

  使用静态导入可以使被导入类的静态变量和静态方法在当前类直接可见,使用这些静态成员无需再给出他们的类名。

  静态导入也是JDK5.0引入的新特性,下面以实例来说明静态导入的用法:

  

  比如先在一个包中定义一个这样的类:

  


package com.example.learnjava;

public class Common
{

    public static final int AGE = 10;
    public static void output()
    {
        System.out.println("Hello World!");
    }
}


  在另一个包中使用时,如果不用静态导入,是这样用的:

  


package com.example.learnjava2;

import com.example.learnjava.Common;

public class StaticImportTest
{
    public static void main(String[] args)
    {
        int a = Common.AGE;
        System.out.println(a);
       
        Common.output();
    }

}


  前面加入了导入语句,将Common类导入,使用其中的静态成员变量和静态方法时需要加上类名。


使用静态导入
  静态导入的语法是:

  import static 包名.类名.静态成员变量;

  import static 包名.类名.静态成员函数;

  注意导入的是成员变量和方法名。

  如前面的程序使用静态导入后:


package com.example.learnjava2;

import static com.example.learnjava.Common.AGE;
import static com.example.learnjava.Common.output;

public class StaticImportTest
{
    public static void main(String[] args)
    {
        int a = AGE;
        System.out.println(a);
       
        output();
    }

}



缺点
  过度地使用静态导入会在一定程度上降低代码的可读性。
分享到:
评论

相关推荐

    欧柏泰克:Java包的静态导入import static和import的区别

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

    JDK新特性之静态导入

    从JDK5.0之后,import语句不仅可以导入类,还增加了导入静态方法和静态域的功能。例如,如果在源文件的顶部,添加一条指令:  Java代码  import java.lang.System.*;  那么就可以使用System类的静态方法和...

    babel-plugin-transform-dynamic-imports-to-static-imports:将动态导入转换为静态导入的转换

    babel插件将动态导入转换为静态导入将动态导入转换为静态导入的转换安装: npm install babel-plugin-transform-dynamic-imports-to-static-imports用法:带有配置文件: { " plugins " : [ " babel-plugin-...

    staticimports:将R函数静态导入包和项目中

    静态导入staticimports提供实用程序功能,R程序员可以在其程序包或其他项目中使用它们。 “静态”部分意味着功能是静态“导入”的-即它们以文本形式复制到项目中,而不是在运行时从程序包中加载。 这样做的好处: ...

    static:静态中间件

    将其导入您的代码中: import "github.com/gin-contrib/static" 典型的例子 看 package main import ( "github.com/gin-contrib/static" "github.com/gin-gonic/gin" ) func main () { r := gin . Default () ...

    jdk1.5.0_10

    jdk1.5新特性 1.泛型 2.foreach 3.自动拆箱装箱 4.枚举 5.静态导入(Static import) 6.元数据(Metadata) 7.线程池 8.Java Generics

    JAVA jdk1.5的新特性

    1.增强的for循环【foreach{}...2.静态导入(这样调用一个静态方法的时候就不需要【类名.方法名】去调用了,直接写静态方法名就可 以了) 格式:import static java.lang.Math.* 注意:这时候的导入就需要加类名了

    serve-static:使用Nest框架(node.js)服务静态网站(SPA):broccoli:

    描述@nestjs/serve-static软件包,用于提供静态内容,例如单页应用程序(SPA)。 但是,如果您正在构建MVC应用程序或要提供资产文件(图像,文档),请改用useStaticAssets()方法(了解更多)。安装$ npm i --save @...

    QtStaticCMake:使用CMake和静态Qt版本构建时生成Qt插件导入语句的宏集合

    QtStaticCMake:使用CMake和静态Qt版本构建时生成Qt插件导入语句的宏集合

    fabric-canvas:fabric.js的Web组件包装器

    或导入静态版本: import 'fabric-canvas/src/fabric-static-canvas' ; 为了使用 API创建形状,您必须将fabric模块与Web组件一起导入: import { fabric } from 'fabric-canvas' ; 将元素添加到页面: < fabric> ...

    eclipse护眼颜色设置

    基础配置信息: 1、注释 Annotations : 107 147 186 浅蓝色 2、符号 Brackets : 255 128 0 橙色 3、类名 Classes : 0 80 50 加粗 深绿色 4、常量 Constant : 202 0 202 ...导入的方法,选择Import,按提示即可完成

    mini-SSG:Mini SSG(静态站点生成器),语法简洁美观

    更新/日志v 0.2.2: 添加 livereload,运行 npm run dev,当发生变化时会自动重新加载浏览器v 0.2.1:错误修复:允许部分值包括“逗号符号” v 0.1.9:所有静态资产都存在于“dev/static”中。 用例 对于使用大量 ...

    React Google静态地图API的React包装器。-React开发

    :globe_showing_Europe-Africa:React Google Static Maps一个React组件包装器,...安装npm install react-google-static yarn添加react-google-static用法import from'react'; 从'react-google-stat导入GoogleStaticMap

    Java工具库BeanQuery.zip

    //静态导入BeanQuery import static cn.jimmyshi.beanquery.BeanQuery.*; //使用 select、from、where、orderBy、desc和asc来组装一个Query,然后执行execute方法来获得结果。 List, Object>> result = select(...

    前端vue-cli项目中使用img图片和background背景图的几种方法

    前端中背景图片极其常用,但是很容易出现各种问题. 一种是脚手架本身资源引用方式的问题,如指定静态资源文件夹. 一种是图片资源引入方式,有时候使用绝对或者相对路径会导致错误. ...使用import导入背景图片 import

    struts+hibernate+spring集成开发

    //静态导入 Public class TestPrintf{ public static void main(String... args){ //可变长参数 Integer i=1; //自动封箱 for(String s:args){ out.printf(”%d: %s %n”,i,s); //格式化输出,自动解箱 i++ } } }

    java关键字.docx

    import:导入,用于导入一个类或包。 instanceof:实例,用于判断一个对象是否是一个类的实例。 int:整型,用于表示一个整数。 interface:接口,用于定义一个接口。 long:长整型,用于表示一个长整数。 native:...

    jelvis:用于Java 8和Scala的Elvis运算符-在链接呼叫中对NPE说不!

    杰维斯 jelvis是Java 8和Scala的Elvis运算符。 jelvis在链式调用中吃掉...入门Java 8 您只需要一个静态导入即可: import static com.github.lukaszbudnik.jelvis.Elvis.elvis;//...Person person = new Person();//

    DjangoUeditor_20181010013851_248.zip

    from django.views.static import serve #导入静态文件模块 from django.conf import settings #导入配置文件里的文件上传配置 urlpatterns = [ path('admin/', admin.site.urls), .... re_path('^media...

Global site tag (gtag.js) - Google Analytics