抽象類:
抽象類就是不能使用new方法進(jìn)行實(shí)例化的類,即沒有具體實(shí)例對象的類。抽象類有點(diǎn)類似“模板”的作用,目的是根據(jù)其格式來創(chuàng)建和修改新的類。對象不能由抽象類直接創(chuàng)建,只可以通過抽象類派生出新的子類,再由其子類來創(chuàng)建對象。當(dāng)一個(gè)類被聲明為抽象類時(shí),要在這個(gè)類前面加上修飾符abstract。 在抽象類中的成員方法可以包括一般方法和抽象方法。
抽象方法:
抽象方法就是以abstract修飾的方法,這種方法只聲明返回的數(shù)據(jù)類型、方法名稱和所需的參數(shù),沒有方法體,也就是說抽象方法只需要聲明而不需要實(shí)現(xiàn)。當(dāng)一個(gè)方法為抽象方法時(shí),意味著這個(gè)方法必須被子類的方法所重寫,否則其子類的該方法仍然是abstract的,而這個(gè)子類也必須是抽象的,即聲明為abstract。
兩者聯(lián)系:
抽象類中不一定包含抽象方法,但是包含抽象方法的類一定要被聲明為抽象類。抽象類本身不具備實(shí)際的功能,只能用于派生其子類。抽象類中可以包含構(gòu)造方法,但是構(gòu)造方法不能被聲明為抽象。 抽象類不能用final來修飾,即一個(gè)類不能既是最終類又是抽象類。 abstract不能與private、static、final、native并列修飾同一個(gè)方法。