您好,登錄后才能下訂單哦!
這篇文章主要介紹“Java語言中的抽象類與繼承實例代碼分析”,在日常操作中,相信很多人在Java語言中的抽象類與繼承實例代碼分析問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java語言中的抽象類與繼承實例代碼分析”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1、掌握抽象類的設計;
2、掌握抽象方法方法的實現;
3、熟悉類的向下向上轉型,以及子類實例化父類對象的基本要求;
4、掌握通過類的繼承實現抽象類。
(一)編寫一個Shape抽象類,其中包含有:
1個成員變量:表示長度,數據類型為double。當類為Circle時,表示半徑;當類為Square時,表示其邊長; 2個抽象方法area()、perimeter(),分別用于計算圖形的面積、周長。
public abstract class Shape{ private double length; // 定義一個私有的成員變量 public double getLength() { // 定義一個方法 getLength() 返回長度值 return length; } public void setLength(double length) { // 定義一個方法 setLength() 獲得長度值 this.length = length; } public abstract double area(); // 定義一個抽象方法 area(),求面積 public abstract double perimeter(); // 定義一個抽象方法,求周長 }
(二)設計類Circle(圓形)和類Square(正方形),實現抽象類Shape中的所有抽象方法,其中計算圓的面積、周長時,π可以直接引用Math.PI。
class Circle extends Shape{ // 定義一個實現抽象類 Circle 圓形,繼承自抽象類 Shape @Override public double area() { // 實現抽象類中的 area() 方法 return Math.PI * getLength() * getLength(); // 返回圓的面積 } @Override public double perimeter() { // 實現抽象類中的 perimeter() 方法 return 2 * Math.PI * getLength(); // 返回圓的周長 } } class Square extends Shape{ // 定義一個實現抽象類 Square 方形,繼承自抽象類 Shape @Override public double area() { // 實現抽象類中的 area() 方法 return getLength() * getLength(); // 返回方形的面積 } @Override public double perimeter() { // 實現抽象類中的 perimeter() 方法 return 4 * getLength(); // 返回方形的邊長 } }
(三)創建一個包含main方法的Test類,測試相關的類和抽象類。
class Test{ // 定義一個測試類 public static void main(String[] args) { // 主入口函數 Shape circle = new Circle(); // 定義一個Shape 類型的circle對象,用Circle類進行實例化 circle.setLength(3); // 傳入參數 System.out.println("圓的半徑為:" + circle.getLength()); System.out.println("圓的面積為:" + circle.area()); System.out.println("圓的周長為:" + circle.perimeter()); Shape square = new Square(); // 定義一個Shape 類型的square對象,用Square類進行實例化 square.setLength(3); // 傳入參數 System.out.println("正方形的邊長為為:" + square.getLength()); System.out.println("正方形的面積為:" + square.area()); System.out.println("正方形的周長為:" + square.perimeter()); } }
全部代碼展示
package experiment11.java; public abstract class Shape{ private double length; // 定義一個私有的成員變量 public double getLength() { // 定義一個方法 getLength() 返回長度值 return length; } public void setLength(double length) { // 定義一個方法 setLength() 獲得長度值 this.length = length; } public abstract double area(); // 定義一個抽象方法 area(),求面積 public abstract double perimeter(); // 定義一個抽象方法,求周長 } class Circle extends Shape{ // 定義一個實現抽象類 Circle 圓形,繼承自抽象類 Shape @Override public double area() { // 實現抽象類中的 area() 方法 return Math.PI * getLength() * getLength(); // 返回圓的面積 } @Override public double perimeter() { // 實現抽象類中的 perimeter() 方法 return 2 * Math.PI * getLength(); // 返回圓的周長 } } class Square extends Shape{ // 定義一個實現抽象類 Square 方形,繼承自抽象類 Shape @Override public double area() { // 實現抽象類中的 area() 方法 return getLength() * getLength(); // 返回方形的面積 } @Override public double perimeter() { // 實現抽象類中的 perimeter() 方法 return 4 * getLength(); // 返回方形的邊長 } } class Test{ // 定義一個測試類 public static void main(String[] args) { // 主入口函數 Shape circle = new Circle(); // 定義一個Shape 類型的circle對象,用Circle類進行實例化 circle.setLength(3); // 傳入參數 System.out.println("圓的半徑為:" + circle.getLength()); System.out.println("圓的面積為:" + circle.area()); System.out.println("圓的周長為:" + circle.perimeter()); Shape square = new Square(); // 定義一個Shape 類型的square對象,用Square類進行實例化 square.setLength(3); // 傳入參數 System.out.println("正方形的邊長為為:" + square.getLength()); System.out.println("正方形的面積為:" + square.area()); System.out.println("正方形的周長為:" + square.perimeter()); } }
1、按照程序編寫、調試、測試過程,在實驗報告中體現全部源代碼、基本調試過程、和最終的運行結果(原始屏幕)。
2、程序運行結束,在源代碼目錄中執行Dir命令,把Dir執行結果作為報告的最后部分提交。
到此,關于“Java語言中的抽象類與繼承實例代碼分析”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。