Java 9でクラスローダーを使用してすべてのモジュールを表示するにはどうすればよいですか?
Java 9より前は、拡張機能とアプリケーションクラスローダーは java.net.URLClassLoaderのインスタンスです。 クラス。 Java 9では、クラスローダーの分類が変更されました。外部クラスローダーの代わりに、プラットフォームクラスローダーがあります。 。プラットフォームクラスローダーを使用する目的は、ブートストラップクラスローダーによってロードされるクラスです。 デフォルトですべての権限があります。
以下の例では、クラスローダーを使用してすべてのモジュールを表示できます。
import static java.util.Objects.isNull; public class Java9ClassLoaderTest { public static void main(String args[]) { ModuleLayer layer = ModuleLayer.boot(); layer.modules().forEach(module -> { ClassLoader classLoader = module.getClassLoader(); String classLoaderName = isNull(classLoader) ? "bootstrap" : classLoader.getName(); System.out.println(classLoaderName + ": " + module.getName()); }); } }
app: jdk.internal.ed platform: jdk.scripting.nashorn platform: java.compiler platform: java.security.jgss platform: jdk.plugin.dom bootstrap: jdk.net bootstrap: java.management app: jdk.jdeps platform: javafx.base app: jdk.editpad bootstrap: java.security.sasl platform: java.sql.rowset bootstrap: java.datatransfer app: jdk.compiler platform: java.scripting platform: jdk.naming.dns platform: jdk.crypto.mscapi bootstrap: java.xml platform: jdk.localedata platform: javafx.swing bootstrap: jdk.unsupported platform: jdk.plugin bootstrap: jdk.snmp bootstrap: jdk.naming.rmi app: jdk.internal.le platform: javafx.web platform: jdk.dynalink platform: jdk.accessibility bootstrap: java.rmi platform: jdk.jsobject platform: java.sql app: jdk.attach bootstrap: jdk.management.cmm platform: jdk.security.auth platform: java.xml.crypto bootstrap: jdk.jfr bootstrap: jdk.management.jfr platform: jdk.security.jgss app: jdk.packager.services bootstrap: java.base app: jdk.internal.opt bootstrap: java.prefs bootstrap: java.management.rmi platform: jdk.zipfs platform: java.jnlp app: jdk.packager platform: oracle.net app: jdk.jlink bootstrap: jdk.management.agent bootstrap: java.logging app: jdk.jdi app: jdk.jstatd platform: java.se app: jdk.javadoc platform: jdk.charsets platform: java.smartcardio app: jdk.jconsole bootstrap: jdk.sctp platform: javafx.graphics bootstrap: jdk.management.resource app: jdk.jdwp.agent app: jdk.internal.jvmstat platform: javafx.controls platform: jdk.crypto.cryptoki platform: javafx.media bootstrap: jdk.httpserver platform: oracle.desktop bootstrap: java.naming app: jdk.jshell app: jdk.jartool platform: jdk.deploy bootstrap: java.desktop platform: javafx.fxml bootstrap: java.instrument platform: jdk.crypto.ec bootstrap: jdk.management platform: jdk.xml.dom platform: jdk.javaws
-
Javaで異なる色とフォントのJLabelテキストを実装するにはどうすればよいですか?
JLabel JLabel クラスはJComponentを拡張できます クラスとJLabelのオブジェクトは、GUI上のテキスト命令または情報を提供します。 JLabel 1行の読み取り専用テキストを表示できます 、画像 またはテキストと画像の両方。 JLabel 異なる色とフォントで1行のテキストを表示することもできます テキストの使用 HTML内のタグ タグ。 JLabel PropertyChangeListenerを明示的に生成できます インターフェース。 例 import java.awt.*; import java.awt.event.*;
-
JavaでJToggleButtonを実装するにはどうすればよいですか?
JToggleButton JToggleButton AbstractButtonの拡張です また、オンに切り替えることができるボタンを表すために使用できます。 およびオフ 。 JToggleButtonの場合 を初めて押すと、押したままになり、2回押すと離すことができます。 JToggleButton ActionEventを生成します 押すたびに。 JToggleButton ItemEventを生成することもできます 、このイベントは、選択の概念をサポートするコンポーネントによって使用されます。 JToggleButtonの場合 を押すと選択されます。