找到 34423 篇文章 关于编程

Java 接口中的抽象方法可以抛出异常吗?

Maruthi Krishna
更新于 2020年6月29日 14:27:42

2K+ 次浏览

是的,接口的抽象方法可以抛出异常。示例在下例中,接口 (MyInterface) 包含一个名为 display 的抽象方法,该方法抛出 IOException。import java.io.IOException; abstract interface MyInterface { public abstract void display()throws IOException ; }遵循的规则在实现此类方法时,您需要遵循以下规则:如果接口中的抽象方法抛出某些异常,则已实现的方法可以抛出与以下所示相同的异常:示例 1 实时演示import java.io.IOException; abstract interface MyInterface { public abstract void display()throws IOException ; } public class InterfaceExample implements MyInterface{ public void ... 阅读更多

Java 中的抽象方法声明可以包含 throws 子句吗?

Maruthi Krishna
更新于 2020年6月29日 14:28:41

2K+ 次浏览

没有方法体的方法称为抽象方法。它只包含方法签名和分号,以及其前面的 abstract 关键字。public abstract myMethod();是的,您可以从抽象类抛出异常。示例在下面的 Java 程序中,我们有两个类:一个名为 MyClass 的抽象类,它有一个抽象方法 (display()),另一个类扩展了抽象类。这里,display() 方法抽象类抛出 IOException。示例 实时演示import java.io.IOException; abstract class MyClass { public abstract void display() throws IOException; } public class AbstractClassExample extends MyClass{ public void display() throws IOException ... 阅读更多

在 Java 中,如何从实现类访问两个接口中名称相同的变量?

Maruthi Krishna
更新于 2020年6月29日 14:29:24

768 次浏览

Java 中的接口类似于类,但它只包含抽象方法和字段,这些字段是 final 和 static 的。您可以使用单个 Java 类实现多个接口。每当两个接口具有相同的名称时,由于接口的所有字段默认都是静态的,您可以使用接口的名称访问它们,如下所示:示例interface MyInterface1{ public static int num = 100; public void display(); } interface MyInterface2{ public static int num = 1000; public void show(); } public class InterfaceExample implements MyInterface1, MyInterface2{ public static int num = 10000; ... 阅读更多

如果 Java 类没有实现接口的所有抽象方法会发生什么?

Maruthi Krishna
更新于 2020年6月29日 14:31:01

2K+ 次浏览

Java 中的接口类似于类,但它只包含抽象方法和字段,这些字段是 final 和 static 的。在单独的类中,您需要实现此接口并为其所有抽象方法提供主体。一旦使用类实现接口,您必须为其所有抽象方法提供主体(实现),或者声明该类为抽象类。如果您不这样做,则会为每个未实现的方法生成一个编译时错误,提示“InterfaceExample 不是抽象的,并且没有覆盖接口 interface_name 中的抽象方法 method_name”。在下面的 Java 程序中,我们有一个名为 ... 阅读更多

Java 接口中可以定义构造函数吗?

Maruthi Krishna
更新于 2020年6月29日 14:31:53

7K+ 次浏览

不可以,您不能在 Java 接口中包含构造函数。在 Java 7 中,您只能拥有公共、静态、最终变量和公共、抽象方法。从 Java 8 开始,接口允许默认方法和静态方法。从 Java 9 开始,接口允许私有和私有静态方法。此外,您在接口中定义的所有方法(上述方法除外)都应由另一个类实现(覆盖)。但是,您不能覆盖 Java 中的构造函数。如果您仍然尝试在接口中定义构造函数,则会生成编译时错误。示例在下面的 Java 程序中,我们试图在接口中定义一个构造函数。public interface MyInterface{ ... 阅读更多

Java 中可以序列化静态变量吗?

Venkata Sai
更新于 2020年6月29日 14:48:49

4K+ 次浏览

在 Java 中,序列化是一个概念,我们可以使用它将对象的 state 写入字节流中,以便我们可以通过网络传输它(使用 JPA 和 RMI 等技术)。但是,静态变量属于类,因此您不能在 Java 中序列化静态变量。如果您仍然尝试这样做,程序会成功编译,但在执行时会引发异常。在下面的 Java 程序中,Student 类有一个静态变量,我们试图在另一个名为 ExampleSerialize 的类中序列化和反序列化它的对象。示例import java.io.FileInputStream; import java.io.FileOutputStream; ... 阅读更多

Java 中可以将接口声明为 final 吗?

Maruthi Krishna
更新于 2020年6月29日 14:33:25

4K+ 次浏览

Java 中的接口类似于类,但它只包含抽象方法和字段,这些字段是 final 和 static 的。由于所有方法都是抽象的,因此您无法实例化它。要使用它,您需要使用类实现此接口,并为其中的所有抽象方法提供主体。使接口成为 final 的。如果您声明一个类为 final,则无法扩展它。如果您使方法成为 final,则无法覆盖它,如果您使变量成为 final,则无法修改它。即,使用 Java 实体的 final,您无法进一步修改它们。如果您将接口设为 final,则 ... 阅读更多

Java 中可以为接口创建对象吗?

Maruthi Krishna
更新于 2020年6月29日 14:14:48

16K+ 次浏览

不可以,您不能实例化接口。通常,它包含抽象方法(Java 8 中引入的默认方法和静态方法除外),这些方法是不完整的。如果您仍然尝试实例化接口,则会生成一个编译时错误,提示“MyInterface 是抽象的;无法实例化”。在下面的示例中,我们有一个名为 MyInterface 的接口和一个名为 InterfaceExample 的类。在接口中,我们有一个整数字段 (public、static 和 final) num 和抽象方法 demo()。从类中,我们试图:创建接口的对象并打印 num 值。示例 实时演示interface MyInterface{ public static final int num ... 阅读更多

在 Java 8 中,可以将接口成员声明为私有或受保护的吗?

Maruthi Krishna
更新于 2022年2月4日 06:05:47

5K+ 次浏览

Java 中的接口类似于类,但它只包含抽象方法和字段,这些字段是 final 和 static 的。由于所有方法都是抽象的,因此您无法实例化它。要使用它,您需要使用类实现此接口,并为其中的所有抽象方法提供主体。接口的私有成员如果接口的成员是私有的,则您无法为方法提供实现,也无法在实现类中访问它的字段。因此,接口的成员不能是私有的。如果您尝试将接口的成员声明为私有,则 ... 阅读更多

什么是 Java 中的瞬态变量?解释一下。

Venkata Sai
更新于 2019年7月30日 22:30:26

320 次浏览

在 Java 中,序列化是一个概念,我们可以使用它将对象的 state 写入字节流中,以便我们可以通过网络传输它(使用 JPA 和 RMI 等技术)。在序列化类的对象时,如果您希望 JVM 忽略特定的实例变量,则可以将其声明为 transient。public transient int limit = 55; // 不会持久化 public int b; // 会持久化在下面的 Java 程序中,Student 类有两个实例变量 name 和 age,其中 age 被声明为 transient。在另一个名为 EampleSerialize 的类中,我们试图 ... 阅读更多

广告
© . All rights reserved.