
在Java編程中,我們經(jīng)常會遇到一些特殊的關(guān)鍵字和概念,其中包括static、final以及抽象類等。本文將深入探討這些關(guān)鍵字和概念的作用和使用方法,并通過一個實例展示抽象類的應(yīng)用。
1. 關(guān)鍵字
1.1 static
- static修飾成員變量:表示該成員變量屬于類,不屬于對象,所有對象共享一份。
- static修飾成員方法:表示該方法屬于類,不屬于對象,通過類名直接調(diào)用。
- 什么時候使用static:當(dāng)所有對象共享一個屬性或方法時,可以使用static修飾。
1.2 final
- final修飾類:表示該類不能被繼承。
- final修飾方法:表示該方法不能被子類重寫。
- final修飾成員變量:表示該成員變量在初始化后不能再修改。
- final修飾局部變量:表示該局部變量在初始化后不能再修改,使用前必須進(jìn)行初始化。
1.3 static final
- 修飾成員變量:表示該成員變量是一個常量,其值在初始化后不能再修改。
2. 抽象類
2.1 抽象類的推導(dǎo)過程
- a.由于方法體沒有意義,需要干掉方法體。
- b.添加abstract關(guān)鍵字在方法上,使方法成為合法的抽象方法,方法體依然不完整。
- c.當(dāng)前類也不完整,需要添加abstract關(guān)鍵字在class前,使類變得合法,當(dāng)前類依然不完整。
2.2 抽象類能否創(chuàng)建對象?
- 抽象類不能直接創(chuàng)建對象,只能用于被繼承。
2.3 抽象類的意義
- 抽象類需要有子類繼承,并且重寫父類的抽象方法。
- 子類繼承抽象類,可以是普通類,也可以是抽象類。
2.4 判斷
- 有抽象方法的類一定是抽象類。
- 抽象類中不一定有抽象方法,可以有普通方法。
3. 案例:計算圓形和長方形的周長及面積
現(xiàn)在,我們通過一個實例來應(yīng)用抽象類的概念,計算圓形和長方形的周長和面積。
abstract class Shape {
abstract double perimeter();
abstract double area();
}
class Circle extends Shape {
double r;
Circle(double r) {
this.r = r;
}
@Override
double perimeter() {
return 2 * Math.PI * r;
}
@Override
double area() {
return Math.PI * r * r;
}
}
class Rectangle extends Shape {
double a;
double b;
Rectangle(double a, double b) {
this.a = a;
this.b = b;
}
@Override
double perimeter() {
return 2 * (a + b);
}
@Override
double area() {
return a * b;
}
}
public class AbstractClassExample {
public static void main(String[] args) {
Shape circle = new Circle(5);
Shape rectangle = new Rectangle(3, 4);
System.out.println("圓形周長:" + circle.perimeter());
System.out.println("圓形面積:" + circle.area());
System.out.println("長方形周長:" + rectangle.perimeter());
System.out.println("長方形面積:" + rectangle.area());
}
}
通過上述實例,我們可以看到抽象類的實際應(yīng)用。Shape類作為抽象類,包含了計算周長和面積的抽象方法,而Circle和Rectangle類分別繼承了Shape類,并重寫了父類的抽象方法。通過多態(tài)性,我們可以靈活地調(diào)用Shape類的子類,并計算出圓形和長方形的周長和面積。
通過本文的介紹,我們深入理解了Java中的抽象類和一些關(guān)鍵字的概念和用法。抽象類作為面向?qū)ο缶幊讨械闹匾拍?,可以幫助我們更好地封裝和繼承,并且通過多態(tài)性實現(xiàn)更靈活的代碼編寫。希望本文對您在學(xué)習(xí)和應(yīng)用抽象類方面有所幫助。
有問題或建議的話,歡迎評論區(qū)留言交流?。。?mark hidden color="red">文章來源:http://www.zghlxwxcb.cn/news/detail-609334.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-609334.html
到了這里,關(guān)于面向?qū)ο缶幊蹋荷钊肜斫獬橄箢惡完P(guān)鍵字的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!