物件導向高階 反射

2022-08-17 22:09:14 字數 739 閱讀 2091

反射的四種方法getattr/setattr/hasattr/delattr

反射物件中的方法 或 類中的靜態方法

反射模組裡的屬性

反射模組裡的方法

pass

反射自己模組的方法和屬性

import sys	#匯入sys模組

#當前模組名用sys.modules['__main__']

setattr(sys.modules['__main__'], 'func')

判斷hasattr(類名, 字串型別方法名)

設定setattr

class a():

pass

a = a()

setattr(a, 'name', 'dog') #給a類設定乙個靜態屬性名為name,值為dog

setattr(a, 'name', 'cat') #給物件a設定乙個屬性名為name, 值為cat

刪除delattr

delattr(a, 'name')	#刪除a的靜態屬性name

delattr(a, 'name') #刪除a的屬性name

物件導向 高階

json方式的物件導向 json 把方法包在json裡 json物件導向 有人管他叫 命名空間 在公司裡 把同一類 的方法包在一起 拖拽和繼承 物件導向的拖拽 改寫原有的拖拽 繼承 asdf 拖拽 instanceof 檢視物件是某個類的例項 使用繼承 限制範圍的拖拽類 建構函式的偽裝 屬性的繼承 ...

物件導向高階

public class person public void print public class student extends person 重寫了父類方法 public void print public class demo public class demo 1.不能new這個類,只能靠...

物件導向高階

私有屬性,不能被子類繼承,在屬性的前面加上 就變為了私有屬性 私有方法,不能被子類繼承,在方法的前面加上 就變為了私有方法 只在前面加,後面不加,一般前後都有 的,屬於類當中自帶的方法或屬性 class class test1 str1 a 私有屬性 def init self pass def m...