java基础第十二天

2017-03-21  本文已影响0人  红颜心雨

1.抽象类

(1)抽象方法:由abstract修饰的方法是抽象方法,只有方法的定义,没有方法体

语法:修饰abstract返回值类型 方法名([参数列别]);

(2)由abstract修饰的类是抽象类,属于不完整的类,该类不能实例化,抽象类中可有抽象方法也可以有具体的方法,也可以只有抽象方法或具体方法,根据业务需求来定

(3)一个具体类如果继承一个抽象类,必须实现该抽象类中所有的抽象方法。

(4)Final和abstract不能同时修饰类,因为final修饰的类不能被继承,而定义抽象类就是被继承的,两者互相矛盾,所以不能一块修饰类

2.接口:制定统一规范

电脑厂商:usb接口

手机充电线,u盘,摄像头

(1)接口由interface定义

(2)接口中所有的属性都是常量,默认是public static final修饰的

(3)接口中的方法都是抽象方法,并且都是public abstract修饰的,接口中不能定义构造器,接口不能实例化

(4)子类如果实现接口用关键字implements,并且必须实现接口中所有的抽象方法,如果子类也是接口的话,用extends关键字

(5)子类可以实现多个接口,多个接口之间用逗号分隔

3.抽象类和接口区别

共同点:都可以有 抽象方法,都不能被实例化,可以被继承

不同点:(1)类的修饰不一样,抽象类是用abstract修饰,接口用interface修饰

(2)抽象类中的属性没有任何限制,接口中所有的属性都是常量,并且默认都是public static final修饰的

(3)抽象类中的方法可以是抽象方法也可以是具体的方法,接口中的方法都是抽象方法,并且默认是public

abstract修饰的

(4)抽象类中可以定义构造器,接口中不能定义构造器

(5)一个类可以实现多个接口,多个接口之间用逗号分隔,但是一个类只能继承一个抽象类

上一篇下一篇

猜你喜欢

热点阅读