java中的接口

简介: java中的接口

一、接口有比抽象类更好的特性:

1.可以被多继承

2.设计和实现完全分离

3.更自然的使用多态

4.更容易搭建程序框架

5.更容易更换实现

二、接口的特性:

1.接口不能被实例化

2.实现类必须实现接口的所有方法

3.实现类可以实现多个接口

4.接口中的常量都是静态常量(static final)

三、接口:

1.语法:

public interface 接口名{}

2.实现接口的语法:

public class 类名 implements 接口名{}

3.需要注意的是,实现接口的同时必须得重写接口里面的方法。

4.一个类只能有一个父类,但是可以实现多个接口。

四、接口表示的是一种约定:

接口体现了约定和实现相分离的原则,通过面向接口编程,可以降低代码间的耦合性。提高代码的可扩展性和可维护性。

五、接口表示一种能力:

一个类实现了某个接口,就表示这个类具备了某种能力。

六、C#中使用接口:

1.语法:访问修饰符 interface 接口名:父接口1,父接口2……{

//属性定义

//方法定义

}

2.实现接口:

class 类名 :父类,接口1,接口2{

}
3.接口之间可以通过":"来实现继承,接口可以实现多继承,但接口不能继承类。
4.接口定义0个或者多个成员,成员主要是方法、属性和索引器,接口汇总不能包含常量,变量或构造方法,也不能包含任何静态成员。
5.接口中的成员访问权限是public
6.接口的命名一般都是I开头。

七、java与C#接口具有以下区别:

1.java中接口通过extends集成父接口,类通过implements实现接口,C#通过冒号来实现这两个功能。

2.java接口中的成员变量(属性)一律是常量,自动用public static final 修饰,C#接口中不允许存在成员变量,但可以有属性。

3.java接口中属性和方法都可以使用public 修饰,C#默认是public,但不允许显示使用public修饰。

4.java接口中可以定义静态常量和方法,但是C#接口中不允许包含任何静态成员。

目录
相关文章
|
8天前
|
Java
Java接口
Java接口
19 0
|
15小时前
|
Java
Java语言接口(Interface)的深入解析
Java语言接口(Interface)的深入解析
|
17小时前
|
存储 安全 Java
Java的Map接口及其实现类的技术性文章
Java的Map接口及其实现类的技术性文章
6 0
|
17小时前
|
Java
Java抽象类与接口的技术性文章
Java抽象类与接口的技术性文章
6 1
|
1天前
|
Java 编译器
Java 8新特性之Lambda表达式与函数式接口
【5月更文挑战第30天】本文将介绍Java 8中的一个重要新特性——Lambda表达式,以及与之密切相关的函数式接口。我们将通过实例分析Lambda表达式的语法、使用方法和优势,同时探讨函数式接口的定义和应用。通过本文的学习,你将能够更好地理解和运用Java 8的这一新特性,提高编程效率和代码可读性。
|
1天前
|
Java
Java的接口与抽象类的区别
Java的接口与抽象类的区别
|
1天前
|
存储 安全 Java
Java list set map等接口及其实现类
Java list set map等接口及其实现类
|
3天前
|
Java 程序员
Java中的多线程编程:理解并应用Thread类和Runnable接口
【5月更文挑战第28天】在Java中,多线程编程是一个重要的概念,它允许同时执行多个任务。本文将深入探讨Java的多线程编程,包括Thread类和Runnable接口的使用,以及如何在实际项目中应用这些知识。我们将通过实例来理解这些概念,并讨论多线程编程的优点和可能的挑战。
|
4天前
|
Java 程序员
Java多线程基础-16:简述Java并发编程JUC中的Callable接口
Callable接口是Java中用于描述带有返回值任务的接口,与Runnable相对,后者无返回值。Callable的call()方法用于执行具体任务并返回结果。
16 0
|
4天前
|
Java 编译器
Java抽象类和接口
Java抽象类和接口
http://www.vxiaotou.com