Java 随心笔记7
提問(wèn):
1.方法重寫(xiě)和方法重載的區(qū)別?方法重載能改變返回值類(lèi)型嗎?
Overload(方法覆蓋)在子父類(lèi)中,出現(xiàn)了方法生命相同的情況
注意事項(xiàng): 1.子類(lèi)的方法聲明要與父類(lèi)相同,
2.子類(lèi)的重寫(xiě)方法的方法,方法的權(quán)限修飾付不能比父類(lèi)更低。
3.父類(lèi)私有的方法,子類(lèi)不能夠進(jìn)行方法重寫(xiě)。
Override(方法重載)
含義:在同一個(gè)類(lèi)中,多個(gè)方法名稱(chēng)相同,它們的參數(shù)列表不同(個(gè)數(shù)不同,數(shù)據(jù)類(lèi)型不同)
2.this關(guān)鍵字和super關(guān)鍵字分別代表什么?以及他們各自的使用場(chǎng)景和作用。
this:
調(diào)用構(gòu)造方法:this(參數(shù)列表)
成員變量名前面加上this.來(lái)區(qū)別成員變量和局部變量
super:
調(diào)用本類(lèi)中的構(gòu)造方法 this(實(shí)參列表);
調(diào)用父類(lèi)中的空參數(shù)構(gòu)造方法 super();
調(diào)用父類(lèi)中的有參數(shù)構(gòu)造方法 super(實(shí)參列表);
?
一、final關(guān)鍵字
final修飾變量就變成了常量,只能賦值一次;
final修飾類(lèi),類(lèi)不能被繼承
final修飾方法,方法不能被重寫(xiě)
二、多態(tài):
a有繼承關(guān)系
b有方法重寫(xiě)
c父類(lèi)的引用指向子類(lèi)的對(duì)象
總結(jié):用多態(tài)實(shí)例化的是父類(lèi)
不用多態(tài)實(shí)例化的是子類(lèi)。
a instanceof b,
向上 向下
三、抽象類(lèi)
格式: 類(lèi):abstract class 類(lèi)名 抽象類(lèi)的方法可以是抽象的也可以是非抽象的。
方法:public abstract void 方法名();
特點(diǎn): 1.抽象類(lèi)與抽象方法都必須使用abstract來(lái)修飾
2.抽象類(lèi)不能直接創(chuàng)建對(duì)象
3.抽象類(lèi)中可以有抽象的方法,也可以沒(méi)有抽象的方法
4.抽象類(lèi)的子類(lèi) a.實(shí)現(xiàn)了抽象方法的具體化,b.抽象類(lèi)
四、接口:
定義 interface 接口名{}
類(lèi)與接口 class 類(lèi)名 implements 接口名{}
實(shí)例化:按照多態(tài)的實(shí)例化
成員變量:只能是常量(默認(rèn)修飾符是public static final )
構(gòu)造方法:沒(méi)有構(gòu)造方法,其主要是進(jìn)行功能的擴(kuò)展
成員方法:只能是抽象的方法,默認(rèn)修飾符是 public abstract
?
轉(zhuǎn)載于:https://www.cnblogs.com/JulyTail/p/9061146.html
總結(jié)
以上是生活随笔為你收集整理的Java 随心笔记7的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: leetcode 103. 二叉树的锯齿
- 下一篇: PhpStorm 的基本应用