1樓:
#include
using namespace std;
class shape //抽象基類
//建構函式
virtual double area() = 0; //面積計算函式(純虛函式)
};class rect:public shape //派生類——矩形
double area() //面積計算函式(實現)
};class circle:public shape //派生類——圓形
//建構函式
double area() //面積計算函式(實現)
};class trapezium:public shape //派生類——梯形
double area() //面積計算函式(實現)
};void main()
c++ 定義乙個抽象類cshape,包含純虛函式 getarea和純虛函式setdata,然後派生出三角形c********類、矩形
2樓:匿名使用者
#include
using namespace std;
class cshape;
class c********:public cshape
void setarea()
bool operator>(const cshape& cbase)
};class crect:public cshape
void setarea()
bool operator>(const cshape& cbase)
};class ccircle:public cshape
void setarea()
bool operator>(const cshape& cbase)
};int main(){
c******** ct;
ct.setarea();
cout<<"c********面積:"< cr && ct > cc)
cout<<"c********面積最大!"< ct && cr > cc)
cout<<"crect面積最大!"< ct && cc > cr)
cout<<"ccircle面積最大!"<
執行結果:
定義乙個抽象類shape表示圖形類,包含乙個抽象方法doublearea()用來計算圓形的面積
3樓:匿名使用者
1、通過快捷方式開啟myeclipse工具,在專案處滑鼠右鍵新建java專案。
2、輸入專案名稱cmk,然後選擇jre8(系統安裝的jre),點選next。
3、進入下一步,選擇預設輸出檔案目錄,然後點選finish完成新建。
4、開啟新建java專案,新建乙個package,然後在包中新建乙個java 類。
5、定義抽象類user,包含了屬性name、age;抽象方法write()即可。
4樓:南瓜蘋果
**如下:
using namespace std;
class shape
;class ********:public shape;擴充套件資料抽象類的意義:
抽象類是不完整的,它只能用作基類。在物件導向方法中,抽象類主要用來進行型別隱藏和充當全域性變數的角色。抽象類往往用來表徵對問題領域進行分析、設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象。
比如,在乙個圖形編輯軟體的分析設計過程中,就會發現問題領域存在著圓、三角形這樣一些具體概念,它們是不同的,但是它們又都屬於形狀這樣乙個概念,形狀這個概念在問題領域並不是直接存在的,它就是乙個抽象概念。
而正是因為抽象的概念在問題領域沒有對應的具體概念,所以用以表徵抽象概念的抽象類是不能夠例項化的。
5樓:夜神
//測試
類public class test
}//抽象類
public abstract class shape//圓類
public class circle extends shapevoid setd(double r)
}//矩形類
public class rect extends shapevoid setlenwid(double length, double width)
}測試結果
圓的面積是50.24
矩形的面積是12.0
6樓:硬幣小耗
方法如下:
public class test
}//抽象類
public abstract class shape//圓類
public class circle extends shapevoid setd(double r)}
定義乙個抽象類cshape,包含純虛函式area(用來計算面積)和setdata(用來重設形狀大小)。然後派生出三角
7樓:匿名使用者
#include "stdafx.h"
#include
#include
using namespace std;
class cshape
;class ctriange:public cshapeclass crect:public cshapeclass ccircle:public cshapeint main()
定義乙個抽象類shape,包括公有的計算面積area函式,計算體積volume函式,輸出基本資訊函
8樓:育知同創教育
#include
#define pi 3.14
using namespace std;
class shape
};class circle : public shapevirtual void area()
};class rectangle : public shapevirtual void area();
};class ******** : public shapevirtual void area()
};void display()
int main()
}for (int i = 0; i < num; i++)return 0;}
c++中如何宣告乙個抽象類shape? 60
9樓:匿名使用者
希望你有用
。#include
class sharp
~sharp(){}
virtual float getarea()=0;
virtual float getperim()=0;
};class rectangle:public sharp;~rectangle();
virtual float getarea()float getperim()
virtual float getlength()virtual float getwidth()private:
float itslength;
float itswidth;
};class circle:public sharp~circle(){}
float getarea()
float getperim()
private:
float itsradius;
};void main()
10樓:_鈊_煩_薏亂
。。。。。。。。
宣告乙個shape類,具有純虛函式getarea和getperim,rectangle和circle的資料成員自己隨便新增。
然後就可以了撒。很簡單。
11樓:張立斌
class sharp
virtual float getarea()=0;
virtual float getperim()=0;
!sharp(){}
private:
double area;
double perim;};
c抽象類和普通類的區別,java中抽象類和介面的區別?
1.c 沒有abstract.vc提供了乙個inte ce 2.抽象類就是指不能例項化的類,因為它們包含了純虛方法。3.虛函式是在申明的時候用了關鍵字virtual的類的 非靜態 成員函式 java中抽象類和介面的區別?抽象類是用來捕捉子類的通用特性的 它不能被例項化,只能被用作子類的超類。抽象類是...
如果在抽象類中定義私有變數,子類繼承抽象類後,子類中的方法需要訪問抽象類中定義的私有變數怎麼辦
私有的子類是不可以用的。但是如果想訪問父類的私有變數或者改變私有變數,可以在超類中定義兩個方法get set 在抽象父類裡定義兩個setter getter方法。抽象類不是必須有抽象方法。定義私有變數主要是防new的 你把類定為靜態,或者把變數定義為靜態,等都可以訪問 set,get來獲取 priv...
C已經在派生類中重定義了抽象類中的純虛函式,為什麼還不讓我用派生類定義物件
抽象類中的純虛函式為 void printarea const但是派生類中的虛函式為 void printarea circle const void printarea rectangle const void printarea const 這些派生類中的函式與抽象類中純虛函式只是重名,但是並不...