Java面向对象编程篇3——接口与抽象类
生活随笔
收集整理的這篇文章主要介紹了
Java面向对象编程篇3——接口与抽象类
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java面向對象編程篇3——接口與抽象類
1、接口(interface)
- 接口中可以含有變量和方法。但是要注意,接口中的變量會被隱式地指定為public static final變量(并且只能是public static final變量,用private修飾會報編譯錯誤),而方法會被隱式地指定為public abstract方法且只能是public abstract方法(用其他關鍵字,比如private、protected、static、 final等修飾會報編譯錯誤),并且接口中所有的方法不能有具體的實現,也就是說,接口中的方法必須都是抽象方法。
- 要讓一個類遵循某組特地的接口需要使用implements關鍵字
- 一個類可以實現多個特定的接口
- 如果一個非抽象類遵循了某個接口,就必須實現該接口中的所有方法。對于遵循某個接口的抽象類,可以不實現該接口中的抽象方法。
2、抽象類
- 抽象類必須在類前用abstract關鍵字修飾。
- 因為抽象類中無具體實現的方法,所以不能用抽象類創建對象。
- 抽象類不一定必須含有抽象方法。
- 抽象方法必須為public或者protected
- 如果一個類繼承于一個抽象類,則子類必須實現父類的抽象方法。如果子類沒有實現父類的抽象方法,則必須將子類也定義為為abstract類。
3、兩者區別
- 抽象類可以提供成員方法的實現細節,而接口中只能存在public abstract 方法;
- 抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是public static final類型的;
- 接口中不能含有靜態代碼塊以及靜態方法,而抽象類可以有靜態代碼塊和靜態方法;
- 一個類只能繼承一個抽象類,而一個類卻可以實現多個接口。
總結
以上是生活随笔為你收集整理的Java面向对象编程篇3——接口与抽象类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 水平输送水汽通量matlab,分享:水汽
- 下一篇: Java数据库篇6——多表查询