java面向对象接口_JAVA面向对象 接口

本文探讨了Java和C#中的接口概念,包括它们的定义、实现方式以及与抽象类的区别。强调了接口在多继承、设计分离和多态性方面的优势,并解释了面向接口编程如何提高代码的抽象性、灵活性和可维护性。同时,介绍了Java接口的特性,如静态常量和公共抽象方法,以及C#接口允许的方法和属性定义。
摘要由CSDN通过智能技术生成

1:接口:如果类所存在的方法都没实现      interface

类只可继承一个类,但可以实现(implements)多个接口,继承和实现可以同时

2:接口的特性:

接口不可以被实例化,                                             eg:public interface Myname(){

实现类必须实现接口的所有方法                                            public void foo();

实现类可以实现多个接口                                              }

接口中的变量都是静态常量                        所有方法都是:public abstract可以写抽象方法

3:可以使用java接口来实现

编写USB接口——根据需求设计方法                 eg:public class Test imprements Myname{

实现USB 接口——实现所有方法                        public void foo(){ System.out.println("")}

使用USB接口——用多态的方法使用                  Myname v=new Test (); v.foo();}

4:面向接口编程:

程序设计时:关心实现类有何能力,而不关心实现细节。

面向接口的约定而不考虑接口实现

5:如何理解接口是一种能力?

接口有比抽象类更好地特征:

可以被多继承,设计和实现完全分离

更自然的使用多态

更容易搭建程序框架

更容易更换实现

6:面向接口编程的好处:

更加抽象,更加面向对象 ,提高编程的灵活性,提高可维护性降低耦合性

7:不能用修饰interface得有:

private,protected,static,

8:java 接口:属性都是全局静态常量   方法:全局抽象方法,无构方法

C#接口:成员主要是方法属性,不能包含常量,变量,构造方法,任何静态成员不能显示

指定任何修饰符。

8:C#中的接口

[修饰符] interface 接口名 : 父接口1,父接口2, …… {

属性定义 方法定义

}

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

定义接口:

public interface UsbInterface {

void Service ();

}

定义实现类:

public class UDisk : UsbInterface {

public void service() {

Console.WriteLine("连接USB口,开始传输数据。");

}

}

9:Java接口 和C#接口比较

Java接口                                        C#接口

定义                            interface                                          interface

实现                             implements                                          :

静态成员                     常量                                                    无

public                        可以显示使用                                    不能显示使用

10:抽象类和接口的异同

相同:俩者都不能被实例化,不能new操作

不同:抽象类  absoract                  接口interface

抽象类可以有部分方法实现,接口所有方法不能实现

一个类只能继承一个抽象类,实现implenments多个接口

接口可以继承多个接口

抽象类有构造方法,接口没有构造函数

抽象类可以有main也能运行 ,接口没有main函数

抽象类方法可以有private  /   protected   接口方法都是public

11:interface可以和abstract一起用

接口中只可定义常量不可定义变量      一个类可以实现多个接口       不能new操作

12:继承和接口的区别:

继承:子类和父类的关系,子类功能比父类完整,减少代码量。

一个子类只有一个父类  一个父类可以有多个子类

接口:  接口和实现类的关系,

(接口:规定,规范,标准。实现:具体实现代码功能)

一个可以实现implement的接口

13:抽象类和接口的区别:(都不能直接使用)

抽象类可以由属性,方法(抽象方法,普通方法)

接口中都是抽象方法            属性=静态常量    eg:public  void int ();

使用:

抽象类必须继承extends    接口必须实现  implement

类是单继承       接口是多实现          接口是特殊的抽象类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值