美文网首页
JAR 包密封(Sealed)

JAR 包密封(Sealed)

作者: meieugene | 来源:发表于2019-10-07 22:06 被阅读0次

包密封

  包密封是指在生成JAR文件的时候,可以选择对JAR文件中的一个包进行密封。对JAR文件中的一个包进行密封是指这个包中定义的所有类都必须出自同一个JAR文件,否则JVM会抛出SecurityException。
  用白话就是将项目打成JAR文件,其项目中引用的同名类都必须来自同一个引用包,否则JVM会抛出SecurityException。
  包密封可以在版本中强制实现一致性。

包密封的MANIFEST.MF文件

    Name: javax/servlet/internal/
    Sealed: true

  Sealed=true,表示指定当前JAR文件为包密封;
  Name=javax/servlet/internal/,表示对javax.servlet.internal包是密封的。
  Name属性为可选属性,如果没有Name属性表示整个JAR文件中所有的包都是密封的。

举例说明

  假如sealed jar中有个名为equals的方法并且包名为com.demo.sealed。
  此时在sample中也有一个名为equals并且包名也为com.demo.sealed

package com.demo.sealed;

    public boolean equals(String param){
        // TODO
    }

  在MANIFEST.MF指定Sealed: true的情况下对sample进行打包后,会默认使用来自同一个包下equals方法。

相关文章

  • JAR 包密封(Sealed)

    包密封   包密封是指在生成JAR文件的时候,可以选择对JAR文件中的一个包进行密封。对JAR文件中的一个包进行密...

  • 010_密封类和密封方法。

    namespace _010_密封类和密封方法 { //sealed class BaseCLass { //...

  • kotlin 密封类sealed class

    sealed class密封类学习笔记###

  • sealed 密封类

    首先密封类可以看作是 枚举,为 继承 设计的,是一个抽象类。因为是抽象类,所以不能实例化,只能实例化其子类。更多的...

  • 12.Kotlin泛型与协变及逆变原理剖析

    1.密封类 密封类(sealed class)①密封类用来表示受限的类继承结构,对密封类中的某个值来说,它所属类型...

  • 密封类,密封方法

    密封:sealed 对于类,不能被继承(任何类都不能继承) 对于方法不能被重写。 “sealed”,只能写在重写的...

  • kotlin 密封类(sealed)

    class 基类名称sealed class 基类名称 {class 子类1class 子类2}这样,这个基类就变...

  • kotlin sealed密封类

    kotlin中sealed关键字修饰的类就是密封类。密封类其实是一种特殊的抽象类,专门用于派生子类的。 密封类的特...

  • Android MVI 设计模式(3)

    我们用 kotlin 的 sealed 类密封一些数据类,kotlin 提供的密封类类似于枚举,密封类用于定义一种...

  • 关键字

    类 class 抽象 abstract 密封 sealed 接口 interface 析构 ~car 结构体 s...

网友评论

      本文标题:JAR 包密封(Sealed)

      本文链接:https://www.haomeiwen.com/subject/tdbkyctx.html