物件導向3

2022-08-15 03:00:12 字數 2581 閱讀 1893

一、isinstance(object,class_or_type_or_tuple)

檢查 object 是否為 class_or_type_or_tuple 的物件

class

foo(object):

pass

obj =foo()

ifisinstance(obj,foo):

print('

yes'

)else

:

print('

no')

二、issubclass(c,b)

檢查 c 是否為 b 的子類

class

b(object):

pass

class

c(b):

pass

print(issubclass(c, b))

三、super()

執行父類的方法

例項,有序字典

class

mydict(dict):

def__init__

(self):

self.

__li =

super(mydict,self).

__init__

()

def__setitem__

(self, key, value):

self.

__li

super(mydict,self).

__setitem__

(key, value)

def__str__

(self):

temp_list =

for key in self.__li:"

\'%s\': %s

" % (key,self.__getitem__

(key)))

temp_str ="

"return

temp_str

obj =mydict()

obj['k1

'] = 'v1'

obj['k2

'] = 'v2'

print(obj)

四、異常處理

異常處理的所有結構,至少包含  try...except...

try

:

#逐行執行主**段

print(123)

except

valueerror as ex:

#當檢測到 valueerror 時執行

print

(ex)

except

exception as ex:

#exception 匹配所有一樣

#當檢測到除 valueerror 之外的錯誤時執行

print

(ex)

else

:

#當主**塊執行完成後執行

pass

finally

:

#無論主**塊是否有報錯,都執行

pass

主動觸發異常

try

:

raise exception('

主動錯誤一下')

except

exception as e:

print(e)

自定義異常

class

myexception(exception):

def__init__

(self, msg):

self.message =msg

def__str__

(self):

return

self.message

try:

raise myexception("

主動錯一下自定義的錯誤")

except

myexception as e:

print(e)

斷言

#

當 assert 後面的表示式為 true 時不報錯,否則報 assertionerror 錯誤

assert 1 == 1

assert 1 == 2

五、設計模型之單例模式

單利模式存在的目的是保證當前記憶體中僅存在單個例項,避免記憶體浪費

class

connectpool(object):

__pool =none

def__init__

(self):

pass

@staticmethod

defget_pool():

ifnot connectpool.__pool

: connectpool.

__pool =connectpool()

return connectpool.__pool

obj1 =connectpool.get_pool()

obj2 =connectpool.get_pool()

print(obj1,obj2)

物件導向3

前邊八篇部落格寫了從面向過程的方法來開發一款軟體的各種方法,和過程。包括了計畫,需求分析,設計,程式功能的實現,測試,維護還有介面設計的多項。但是,隨著技術的發展,隨著it業的發展,物件導向的技術,已經發展的越來越廣泛。這篇部落格,我就給大家概要介紹一下面向技術相關技術!首先看一下要總結知識的幾大項...

物件導向3

1 json的全稱就是個 object 物件 2 物件導向的封裝函式叫做工廠方式 方便建立多個物件導向 3 物件的引用 基本型別的引用 單純只是值的複製 物件型別的引用 位址的傳遞引用 只要在程式中賦值,必然要開闢新的位址。比較 基本型別只要值相同true 物件型別 值和引用都相同 var arr1...

物件導向3

抽象類 抽象類是對一類事物特徵行為的抽象,可以包含抽象方法。在python3中可以使用abc模組,該模組中有乙個元類abcmeta和修飾器 abstractmethod。抽象類不能被直接例項化 多重繼承 python支援多重繼承,即1個類可以繼承多個父類。語法為 class name parent ...