找到 2637 篇文章 关于 Java

如何在 Java 9 中的 JShell 中实现整数类型转换?

raja
更新于 2020-04-21 12:03:51

200 次浏览

JShell 是 Java 9 版本中引入的一个命令行交互式工具,它允许程序员执行简单的语句、表达式、变量、方法、类、接口等,而无需声明 main() 方法。在 JShell 中,编译器会通过抛出错误来警告程序员类型转换 问题。但是,如果程序员知道这一点,则需要显式转换。如果我们需要将较小的数据值存储到较大的类型转换中,则需要隐式转换。整数 类型转换有两种:字面量到变量赋值:例如,short s1 = 123456,数据超出范围。它在编译时已知,编译器会标记一个... 阅读更多

Java 9 中 Subscriber 接口的规则是什么?

raja
更新于 2020-04-21 08:38:18

324 次浏览

Subscriber 接口订阅发布者以通过 onNext() 方法接收项目,通过 onError() 方法接收错误消息,或通过 onComplete() 方法接收不再期望项目的信号。在任何这些事情发生之前,发布者会调用 onSubscription() 方法。public interface Subscriber {    public void onSubscribe(Subscription s);    public void onNext(T t);    public void onError(Throwable t);    public void onComplete(); }Subscriber 接口的规则:Subscriber 必须通过 Subscription.request(long n) 方法调用以接收 onNext() 信号。Subscriber.onComplete() 和 Subscriber.onError(Throwable t) 方法不得在 Subscription 或 Publisher 上调用任何方法。Subscriber.onComplete() 和 Subscriber.onError(Throwable t) 方法必须在收到... 阅读更多

如何在 Java 9 中使用 ProcessBuilder 创建进程?

raja
更新于 2020-04-20 16:24:53

318 次浏览

Java 9 向 Process API 添加了 ProcessHandle 接口以增强 Process 类。ProcessHandle 接口的一个实例标识一个本地进程,允许我们查询进程状态 并管理进程,而 ProcessHandle.Info 允许我们使用本地代码,因为需要获取本地进程的 PID 。ProcessBuilder 类可用于创建单独的操作系统进程。在下面的示例中,我们可以使用 ProcessBuilder 类创建一个“记事本”应用程序的进程。示例import java.time.ZoneId; import java.util.stream.Stream; import java.util.stream.Collectors; import java.io.IOException; public class ProcessBuilderTest {    public static void main(String args[]) throws IOException {       ProcessBuilder pb = new ProcessBuilder("notepad.exe"); ... 阅读更多

如何在 Java 9 中创建符合 Html5 的 Javadoc?

raja
更新于 2020-04-20 10:20:55

214 次浏览

在 Java 9 之前,我们必须在谷歌搜索以查找特定包、类、接口和方法信息。从 Java 9 开始,Javadoc 在 API 文档本身中包含搜索选项,并且输出与 HTML5 兼容。在下面的示例中,我们在“C:/JAVA”文件夹中创建了“JavaDocTest.java”文件。示例public class JavaDocTest {    /**       * 要运行以打印的默认方法       * Tutorialspoint       * @param args 命令行参数    */    public static void main(String args[]) {       System.out.println("Tutorialspoint");    } }Java 9 生成的文档... 阅读更多

Java 9 中 Optional.or() 方法的重要性?

raja
更新于 2020-04-17 17:40:48

676 次浏览

在 Java 9 中,一些静态方法:stream()、or() 和 ifPresentOrElse() 已添加到 Optional 类中。Optional 类的引入解决了空指针异常。Optional.or() 方法如果存在值,则返回一个描述该值的 Optional,否则返回由供应函数生成的 Optional。语法public Optional or(Supplier

如何在 Java 9 中创建静态 VarHandle?

raja
更新于 2020-04-17 09:28:06

429 次浏览

VarHandle 是对变量的引用,它以各种访问模式(例如普通 读/写、volatile 读/写和比较并交换)提供对变量的访问,类似于 java.util.concurrent.atomic 和 sun.misc.Unsafe 提供的功能。变量可以是数组 元素、类中的实例 或静态 字段。在下面的示例中,我们可以创建一个静态变量句柄。示例import java.lang.invoke.MethodHandles; import java.lang.invoke.VarHandle; public class StaticVarHandleTest { static int field; static int[] array = new int[20]; static final VarHandle FIELD, ARRAY; static { try { ... 阅读更多

Java 9 中 JShell 中的外部声明规则是什么?

raja
更新于 2020-04-16 19:10:32

85 次浏览

JShell 是 Java 9 中引入的一个命令行工具,它是 Java 的第一个官方 REPL 工具,用于创建简单的编程环境,读取用户的输入,对其进行评估并打印结果。在类 或接口 之外的声明 (以及类和接口本身的声明)是在以下规则下创建的。外部声明规则:1) 可以忽略诸如 public、protected 和 private 之类的访问修饰符。所有声明片段都可以被其他所有片段访问。jshell> private int i = 10; i ==> 10 jshell> System.out.println(i); 102) 可以忽略修饰符 final 。允许更改和继承。jshell> final class A {void m() {} } ... 阅读更多

我们如何在 Java 9 中创建 VarHandle 的实例?

raja
更新于 2020-04-16 14:11:28

155 次浏览

通常,变量句柄只是对变量的类型化引用。它将是数组元素、类的实例或静态字段。VarHandle 类可以在特定条件下提供对变量的写和读访问。这些是不可变的,没有可见的条件。此外,它们不能被子类化,并且每个 VarHandle 都有一个泛型类型 T,它是此 VarHandle 表示的每个变量的类型。VarHandle 的目标是定义一个标准,用于调用 java.util.concurrent.atomic 和 sun.misc.Unsafe 操作在字段和数组元素上的等效项。在下面的示例中,我们可以使用... 阅读更多

如何在 Java 9 中实现 Flow.Publisher 接口?

raja
更新于 2020-04-16 10:36:29

696 次浏览

Publisher 接口是无限数量的顺序元素的提供者,根据其 Subscriber(s) 收到的需求发布它们。响应调用 Publisher.subscribe(Subscriber),Subscriber 上方法的可能调用序列。这意味着 onSubscribe() 方法,然后是无限数量的 onNext() 方法(根据 Subscriber 的请求),然后是 onError() 方法(如果出现错误)或 onComplete() 方法,当不再有元素可用时,只要 Subscription 未取消。语法public interface Publisher {    public void subscribe(Subscriber

Android 中 Java 和 Kotlin 的区别及示例

Mahesh Parahar
更新于 2020-04-16 05:57:32

225 次浏览

考虑到 Kotlin 相对于 Java 的多项增强功能,Kotlin 在 Android 开发中得到了引入。例如:使用相同的功能,代码行数更少,开发更容易。Java: TextView displayText = (TextView) findViewById(R.id.textView); displayText.setText("Hello World"); Kotlin: textView.setText("Hello World")编译时处理臭名昭著的空指针异常。var value: String = "abc" // 编译错误 value = null数据类代替 POJO。data class User(val name: String, val age: Int)以下是 Java 和 Kotlin 之间的一些重要区别。序号关键JavaKotlin1异常Java 使用已检查异常进行异常处理。Kotlin 没有已检查异常。它会抛出编译时错误。2空值处理Java 没有强制执行空值检查,因此会出现空指针异常... 阅读更多

广告