找到 4330 篇文章 关于 Java 8

如果子类没有覆盖 Java 中的抽象方法会发生什么?

Maruthi Krishna
更新于 2020-06-29 14:39:48

6K+ 浏览量

没有方法体的方法称为抽象方法。它只包含方法签名和分号,以及它前面的 abstract 关键字。public abstract myMethod();要使用抽象方法,您需要通过扩展其类并为其提供实现来继承它。包含 0 个或多个抽象方法的类称为抽象类。如果它包含至少一个抽象方法,则必须将其声明为 abstract。扩展抽象类在 Java 中扩展抽象类后,您需要覆盖其中的所有抽象方法,或者将其声明为 abstract。如果您不这样做,则会... 阅读更多

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

Maruthi Krishna
更新于 2020-06-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-06-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-06-29 14:29:24

768 浏览量

Java 中的接口类似于类,但它仅包含抽象方法和字段,这些字段是 final 和 static 的。您可以使用 Java 中的单个类实现多个接口。每当两个接口具有相同的名称时,由于接口的所有字段默认都是 static 的,您可以使用接口的名称访问它们,如下所示:示例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-06-29 14:31:01

2K+ 浏览量

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

我们可以在 Java 中的接口内部定义构造函数吗?

Maruthi Krishna
更新于 2020-06-29 14:31:53

7K+ 浏览量

不,您不能在 Java 中的接口内包含构造函数。截至 Java7,您只能拥有 public、static、final 变量以及 public、abstract 和方法。从 Java8 开始,接口允许默认方法和静态方法。从 Java9 开始,接口允许私有和私有静态方法。此外,您在接口中定义的所有方法(上述方法除外)都应由另一个类实现(覆盖)。但是,您不能在 Java 中覆盖构造函数。如果您仍然尝试在接口中定义构造函数,它会生成编译时错误。示例在以下 Java 程序中,我们正在尝试在接口内定义一个构造函数。public interface MyInterface{   ... 阅读更多

解释如何在 Java 中从字符串中删除前导零

Venkata Sai
更新于 2020-06-29 14:48:21

3K+ 浏览量

每当您将整数值读入字符串时,您可以使用 StringBuffer 类、使用正则表达式或通过将给定字符串转换为字符数组来删除其前导零。转换为字符数组以下 Java 程序从用户那里读取一个整数值到一个字符串中,并通过将给定字符串转换为字符数组来删除其前导零。示例import java.util.Scanner; public class LeadingZeroes {    public static String removeLeadingZeroes(String num){       int i=0;       char charArray[] = num.toCharArray();       for( ; i

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

Venkata Sai
更新于 2020-06-29 14:48:49

4K+ 浏览量

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

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

Maruthi Krishna
更新于 2020-06-29 14:33:25

4K+ 浏览量

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

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

Maruthi Krishna
更新于 2020-06-29 14:14:48

16K+ 浏览量

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

广告