最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

簡單介紹python封裝的基本知識

 更新時間:2019年08月10日 08:33:38   作者:人生與戲  
這篇文章主要介紹了簡單介紹python封裝的基本知識,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

python封裝簡介

1.效果圖:

  對比一:

  對比二:

2.學(xué)習(xí)來源代碼:

# 封裝是面向?qū)ο蟮娜筇匦灾?
# 封裝指的是隱藏對象中一些不希望被外部所訪問到的屬性或方法
# 如何隱藏一個對象中的屬性?
#  - 將對象的屬性名,修改為一個外部不知道的名字
# 如何獲取(修改)對象中的屬性?
#  - 需要提供一個getter和setter方法使外部可以訪問到屬性
#  - getter 獲取對象中的指定屬性(get_屬性名)
#  - setter 用來設(shè)置對象的指定屬性(set_屬性名)
# 使用封裝,確實增加了類的定義的復(fù)雜程度,但是它也確保了數(shù)據(jù)的安全性
#  1.隱藏了屬性名,使調(diào)用者無法隨意的修改對象中的屬性
#  2.增加了getter和setter方法,很好的控制的屬性是否是只讀的
#    如果希望屬性是只讀的,則可以直接去掉setter方法
#    如果希望屬性不能被外部訪問,則可以直接去掉getter方法
#  3.使用setter方法設(shè)置屬性,可以增加數(shù)據(jù)的驗證,確保數(shù)據(jù)的值是正確的
#  4.使用getter方法獲取屬性,使用setter方法設(shè)置屬性
#    可以在讀取屬性和修改屬性的同時做一些其他的處理
#  5.使用getter方法可以表示一些計算的屬性

class Dog:
  '''
    表示狗的類
  '''
  def __init__(self , name , age):
    self.hidden_name = name
    self.hidden_age = age
  def say_hello(self):
    print('大家好,我是 %s'%self.hidden_name) 
  def get_name(self):
    '''
      get_name()用來獲取對象的name屬性
    '''  
    # print('用戶讀取了屬性')
    return self.hidden_name
  def set_name(self , name):
    # print('用戶修改了屬性')
    self.hidden_name = name
  def get_age(self):
    return self.hidden_age
  def set_age(self , age):
    if age > 0 :
      self.hidden_age = age  
d = Dog('旺財',8)
# d.say_hello()
# 調(diào)用setter來修改name屬性 
d.set_name('小黑')
d.set_age(-10)
# d.say_hello()
print(d.get_age())

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Pycharm技巧之代碼跳轉(zhuǎn)該如何回退

    Pycharm技巧之代碼跳轉(zhuǎn)該如何回退

    用Pycharm寫Python代碼有一段時間了,最近發(fā)現(xiàn)了一個Pycharm的一個小技巧想分享給大家,下面這篇文章主要給大家介紹了關(guān)于Pycharm代碼跳轉(zhuǎn)該如何回退的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • 最新評論

    黄龙县| 绥棱县| 松桃| 肇州县| 观塘区| 商河县| 克山县| 恩施市| 贵州省| 泾源县| 广德县| 铜梁县| 伽师县| 神池县| 偃师市| 普安县| 仁怀市| 蒙山县| 益阳市| 天峨县| 延长县| 咸阳市| 昌平区| 德清县| 安图县| 新干县| 阳山县| 静安区| 朔州市| 吐鲁番市| 观塘区| 瑞丽市| 荣昌县| 安仁县| 辽源市| 托克逊县| 巴彦淖尔市| 齐河县| 舒兰市| 巫溪县| 呼和浩特市|