修改物件的某個屬性的值 什麼是類,什麼是物件

2021-10-16 03:20:44 字數 2423 閱讀 3616

一什麼是類?類是物件的"靈魂"。物件可以是任何事物,而類不會做任何事情,也不會占用記憶體,只有當類成為物件並使用set語句和new關鍵字例項化為具體物件後,才能做事情並占用記憶體。

把類例項化為具體物件的語法為:

dim c as class

set c=new class

上述語句建立了乙個名為c的物件,該物件的資料型別為定義的類class。其特點是:

1 使用new關鍵字,可以建立任意數量的類的新例項,並且能夠將其儲存在collection物件中。

2 使用property let/set/get語句,可以編寫**驗證賦給類元素的值,並且可以編寫當值改變時執行的相應**。例如,能夠編寫**確保某個值為要求的特性。

3 類可以定義方法(使用sub過程和function過程),執行某項動作。

注意點:與使用者自定義型別的區別,下面給出了自定義資料型別的特點:

2 不能在執行時新增新的自定義型別變數。

3 不能控制賦給自定義型別中元素的值。如只能定義為整數,但假如要求是大於5的值無法進行控制。

4 自定義型別只是靜態地儲存資料。

二 什麼是類模組,類屬性和方法:

類模組由屬性和方法組成,類本身類似於名詞;屬性可以當作形容詞,用來描述類;方法則為動詞,執行操作

三 類和物件的比較

讓我們先來看一條非常簡單的程式,讓我們親身體會一下類的廬山真面目:

sub mynzclass1_1()

sheets("1").activate

range("a1").value = "hello,vba world"

end sub

上面**的第二句:range("a1").value = "hello,vba world"

我們把這這句**全部放開,把隱藏的補充完整,看看是什麼樣子:

我們解釋一下:

1 range("a1")為物件,指定單元格.

2 range("a1")前面,activesheet也是物件,指定了哪個工作表。

3 activesheet前面又有乙個物件activeworkbook,指定了是哪個工作薄,

那麼其中的value是什麼?value是乙個range("a1")這個物件的乙個屬性。那它是從哪來的呢?它是由range類定義的。那麼range是類還是物件呢?別急,我慢慢講解,希望大家通過我的講解能理解類和物件的關係。

在上面的講解中,我們提到例項化類為具體物件的過程,其實在mynzclass_1引用了乙個range類,並將之例項化後修改了它的屬性。而在例子中,我們只不過是將這一切都以隱藏起來,直接對乙個物件range("a1")修改它的屬性,但range("a1")這個物件正是引用了ragne這個類,才具有了range類的屬性"value"。

我們把上面的**轉換一下:

sub mynzclass1_2 ()

sheets("1").activate

dim ra as range '引用乙個range類

set ra = range("a1") 'set將類例項化

ra.value = "hello,world" 'ra是乙個物件了

set ra = nothing '將例項化銷毀

這段**是上面mynzclass1_1的原始**,從中我們看出類本身並不直接為我們做什麼,但是,它卻又一直默默地隱藏在幕後規化著我們的動作。是的,這就是類。它是通過物件的方式展現在我們的面前,讓我們無時無刻與之交流,卻又常常在不經意間忽視了它的存在。

那我們又要怎樣來區分類和物件呢?其實它們經常成對地出現在我們面前,只是乙個是看得見摸得著的,乙個卻深藏不露。我們可以這樣去理解類與物件:類是乙個概念或是一種定義,每個類擁有其自己的特徵和行為方式,而物件就是某個類的例項。所以類是物件的"靈魂",它無處不在,而你卻看不到它。

比如:汽車

如果作為類:汽車的定義為有四個或者四個以上輪子,人能夠坐在上面,操作它行走的工具(好難的定義)。這個時候"汽車類"是有自己的屬性,如:汽車的前輪(是負責轉向的)。汽車的前玻璃(是負責擋風的)等等。這裡的"汽車"是乙個概念抽象的概念。

而我們通常指的汽車是作為物件:如豐田汽車就是汽車類中的乙個大物件,這個大物件中還有小的物件,如"威馳fs"物件,屬性:輪子是某某牌子的,前擋風玻璃是某某牌子的。這些就是很具體的屬性值了。

今日內容回向:

1 什麼是類?

2 類和物件的聯絡是什麼?

修改物件的某個屬性的值 Python呼叫類的屬性

呼叫類的其它資訊 在定義方法時,必須有self這一引數。這個引數表示某個物件。物件擁有類的所有性質,那麼我們可以通過self,呼叫類屬性。class human object laugh hahahaha def show laugh self print self.laugh def laugh ...

vue修改物件的屬性值後頁面不重新渲染

最近專案在使用vue,遇到幾次修改了物件的屬性後,頁面並不重新渲染,場景如下 html頁面如下 html view plain copy template v for item in tabledata div class div div div el button size mini click ...

什麼是類 物件 屬性 方法 類的成員

類 具有同種屬性的物件稱為類,是個抽象的概念。比如說 汽車 人 狗 神 物件 日常生活中的所有東西都是物件,是類的例項化。比如說 推土車是汽車的例項化 姚明是人的例項化 小白 狗的名字 是狗的例項化 二郎神是神的例項化 屬性 用來描述具體某個物件的特徵的是屬性,是靜態的。比如 姚明身高2.6公尺多 ...