很多初學的小伙伴們,在學到“類”的時候,就開始犯迷糊了。“類”到底是個什么東西,是用來干嘛的?然后就百度搜索,搜出了很多。一看回答,很多都是在扯什么面向對象,還講了一堆稀奇古怪的概念,看了反而更迷糊了。所以,我這篇文章,就是要帶大家,用最簡單、通俗、暴力的方式理解什么是類,類能干什么,怎么使用。
首先,我們要明白,既然python的作者設計了“類”這個東西,那肯定是在編程的時候有這種需求的。那我們什么時候需要用到類呢?當然,可以用到類的地方有很多很多。但如果大家還沒有太多的代碼經驗,我就直接告訴你們答案了:如果多個函數需要反復使用同一組數據,使用類來處理,會很方便。
面向對象編程是在面向過程編程的基礎上發展來的,它比面向過程編程具有更強的靈活性和擴展性。面向對象編程是程序員發展的分水嶺,很多初學者會因無法理解面向對象而放棄學習編程。
面向對象編程(Object-orientedProgramming,簡稱OOP),是一種封裝代碼的方法。其實,在前面章節的學習中,我們已經接觸了封裝,比如說,將亂七八糟的數據扔進列表中,這就是一種簡單的封裝,是數據層面的封裝;把常用的代碼塊打包成一個函數,這也是一種封裝,是語句層面的封裝。
打個比方,若在某游戲中設計一個烏龜的角色,應該如何來實現呢?使用面向對象的思想會更簡單,可以分為如下兩個方面進行描述:從表面特征來描述,例如,綠色的、有4條腿、重10kg、有外殼等等。從所具有的的行為來描述,例如,它會爬、會吃東西、會睡覺、會將頭和四肢縮到殼里,等等。
如果將烏龜用代碼來表示,則其表面特征可以用變量來表示,其行為特征可以通過建立各種函數來表示。參考代碼如下所示: