java 接口和抽象类的区别_Java中的接口与抽象类:有什么区别?

java 接口和抽象类的区别_Java中的接口与抽象类:有什么区别?_第1张图片

什么是接口?

接口是可用于实现类的蓝图。接口不包含任何具体方法(有代码的方法)。接口的所有方法都是抽象的方法。

无法实例化接口。但是,可以实例化实现接口的类。接口从来不包含实例变量,但它们可以包含公共静态最终变量(即常量类变量)。

什么是抽象类?

在声明中包含抽象关键字的类称为抽象类。抽象类至少应该有一个抽象方法。即没有身体的方法。它可以有多种具体的方法。

抽象类允许您为具体类创建蓝图。但是继承类应该实现抽象方法。

抽象类不能实例化。

使用接口的重要原因

· 接口用于实现抽象。

· 用于支持运行时的动态方法解析。

· 它帮助您实现松散耦合。

· 允许您将方法的定义与继承层次结构分开。

使用抽象类的重要原因

· 抽象类为子类提供默认功能。

· 为未来的特定类提供模板。

· 帮助您为其子类定义公共接口。

· 抽象类允许代码可重用。

界面VS抽象类

java 接口和抽象类的区别_Java中的接口与抽象类:有什么区别?_第2张图片

Java中接口和抽象类的示例代码

下面是用Java创建接口和抽象类的示例代码

接口语法

interface name{

//methods

}

Java接口示例:

interface Pet {

public void test();

}

class Dog implements Pet {

public void test() {

System.out.println("Interface Method Implemented");

}

public static void main(String args[]) {

Pet p = new Dog();

p.test();

}

}

抽象类语法

abstract class name{

// code

}

抽象类示例:

abstract class Shape {

int b = 20;

abstract public void calculateArea();

}

public class Rectangle extends Shape {

public static void main(String args[]) {

Rectangle obj = new Rectangle();

obj.b = 200;

obj.calculateArea();

}

public void calculateArea() {

System.out.println("Area is " + (obj.b * obj.b));

}

}

想继续了解JAVA知识,记得关注+转发+收藏啊!

java 接口和抽象类的区别_Java中的接口与抽象类:有什么区别?_第3张图片

你可能感兴趣的:(java,接口和抽象类的区别)