- 物件具有屬性:
- ex.
David.Tall = 80;
label1.Text = "Hello";
label1.BackColor=Color.Yellow; - 物件具有方法:
- ex.
Car1.Move(100,200); - 物件要有訊息與事件:
- ex.
button1.Click+=new EventHandler(button1_Click);
private void button1_Click(object sender, EventArgs e)
{
...... //敘述區塊
} - 物件要能被識別:
- Car1.Fordward(); //Car1前進
Car2.Backward(); //Car2後退
2.物件導向應用程式設計特性具有:
- 抽象化:
- 影片:
- 程式碼:
-------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ch6_1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
//函數
private void Draw(int vType)
{
Graphics g;
Pen p = new Pen(Color.Red);//建立一支紅色筆
g = this.CreateGraphics();//取得畫布
g.Clear(Color.White);//清除畫布
switch(vType)
{
case 0:
g.DrawEllipse(p, 90, 30, 90, 30);
break;
case 1:
g.DrawLine(p, 90, 50, 180, 100);
break;
case 2:
g.DrawArc(p, 90,30,90,90,0,250);
break;
}
}
private void btnCircle_Click(object sender, EventArgs e)
{
Draw(0);
}
private void btnLine_Click(object sender, EventArgs e)
{
Draw(1);
}
private void btnArc_Click(object sender, EventArgs e)
{
Draw(2);
}
}
}
--------------------------------------------------------------------------
- 封裝:
- 資料結構和操作資料結構的所有方法封裝在物件類別當中,外界無法存取該物件類布的資料結構
- 繼承:
- 父類別、子類別
- 多型:
- 物件可使用相同方法來操作不同類型的物件
- 動態繫結:
- 編譯器在進行編譯程式的階段時不將物件與方法聯繫在一起,而是將物件ㄤ法的位置建立成一個虛擬表格,在程式執行階段時再由虛擬表格去判斷該呼叫哪個物件的方法。
沒有留言:
張貼留言