• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

java 模块化

开发技术 开发技术 4小时前 2次浏览

java9出了模块,作为一名主要用java程序员,所以要提前学习,保持一颗好学的心.

1.创建模块

java 模块化

 

 

 新建java project com.horstmann.greet,eclipse新版会提示是否要创建模块,java 模块化

 

 

 

,如果在此输入模块名字的话就会生成一个module-info.java类,是模块的描述信息类,主要包含以下内容

 

java 模块化

 

 

 到此一个模块就创建好了,如果没有在创建的时候输入模块,也可以自己新建module-info.java类来创建模块.

2. 暴露模块

我们创建一个接口

package com.horstmann.greet;

public interface Greeter {
    static Greeter newInstance() {
        return new com.horstmann.greet.internal.GreeterImpl();
    }
    String greet(String subject);
    
}

和它的实现类

package com.horstmann.greet.internal;

import com.horstmann.greet.Greeter;

public class GreeterImpl implements Greeter {

    @Override
    public String greet(String subject) {
        // TODO Auto-generated method stub
        return "Hello, " + subject + "!";
    }

}

目录结构如下

java 模块化

 

 

 一般来说都会暴露模块的接口,而不是实现类,类似于es6中的模块,我们直接exports包即可

module com.horstmann.greet {
    exports com.horstmann.greet;
}

这样其他模块就可以引用即可

3.引用暴露的模块

新建模块 v2ch09.exportedpkg

java 模块化

 

 

 创建类HelloWorld

eclipse中右键属性引入刚刚的模块

java 模块化

 

 

 编辑module-info.java即可引入导出的类

module v2ch09.exportedpkg {
    requires com.horstmann.greet;
    requires hellomod.test;
}
public class HelloWorld {
    public static void main(String[] args) {
        Greeter greeter = Greeter.newInstance();
        System.out.println(greeter.greet("Modular World"));
    }
}

 

直接运行helloworld类,即可看到结果

java 模块化

 

 

通过exports和requires,我们可以在module-info中对模块的权限进行控制,需要哪些模块,不需要哪些模块,非常方便. 

 


程序员灯塔
转载请注明原文链接:java 模块化
喜欢 (0)