面向对象是一种编程方式,此编程方式的实现基于对  和 对象 的使用。

Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。

在这里,为文章中使用的词汇做一下说明:
函数:指的是第一个参数不是self的函数,不在类中定义的函数;
方法:指是的第一个参数是self的函数,在在类中定义的函数;
实例:类的对象(对类进行实例化即为对象),instance;

 

特性:

封装

封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。

封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

__init__ 是封装必不可少的,看列子:

class Init():

    def __init__(self,name,age,gender):
self.Name = name
self.Age = age
self.Gender = gender obj1 = Init('xiao',15,'男')
obj2 = Init('yao',16,'女') print(obj1.Name)
print(obj2.Name)

这样实现了数据封装

xiao
yao

继承

继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。(此处我们只讨论python3的继承)

通过继承创建的新类称为“子类”或“派生类”。

被继承的类称为“基类”、“父类”或“超类”。

继承的过程,就是从一般到特殊的过程。

要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。

在某些 OOP 语言中,一个子类可以继承多个基类。但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。

class C1():
def c1(self):
print('C1')
class C2(C1):
def c2(self):
print('C2')
class C3():
def c3(self):
print('C3')
def c1(self):
print('C3')
class C4(C2,C3):
def c4(self):
print('C4')
obj = C4()
obj.c1()
obj1 = C3()
obj1.c1()

输出结果:

C1
C3

可见,C4继承C2,C3,C2又继承C1,所以obj会有c1方法。

类的继承可以总结为:

1.左侧优先

  class C4(C2,C3) 这里C2比C3优先

2.深度优先

上面例子C1和C3都有c1方法,但是最后C4继承的是C1的c1

3.有共同的父类,最后找父类

看图红色箭头表示继承关系,黑色箭头表示查找关系

图一:                                                                                                       图二:

aaarticlea/png;base64,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" alt="" />        aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAf8AAAIsCAIAAABz0Tf1AAAgAElEQVR4nO2dsW8VWZq3739gMsLdlGCXFZ1ZrW5SBiSQOmg3HQASdro7nZFA5MgtDSJo9QQDTvCE9CTkqEW2dKf+mpFASN5oR0gOWurR7JwvKPv6Vt3rqlPnPec971v3+amk8cLTtT/OOe/j8rW5zI6Pj0N0ysFHR0cWatBZpwaddWrQWaeG084zViQZprMOTGcdmM46sJ3O2D8dprMOTGcdmM46sJ3O2D8dprMOTGcdmM46sJ3O2D8dprMOTGcdmM46sJ3O2D8dprMOTGcdmM46sJ3O2D8dprMOTGcdmM46sJ3Os2MbOTo6ql1hdOisEzrrhM46sdOZZ/90mM46MJ11YDrrwHY6Y/90mM46MJ11YDrrwHY6Y/90mM6D8Pb29hUSne3tbYVNOS+cZx3YTmfsnw7TeRCurVN/UdiU88J51oHtdMb+6TCdB+HGaJ/MdrgGL+yfANNZAmP/dJjOgzD2x/5FYTpLYOyfDtN5EMb+2L8oTGcJjP3TYToPwtgf+xeF6SyBsX86TOdBGPtj/6IwnSUw9k+H6TwIY3/sXxSmswTG/ukwnQdh7I/9i8J0lsDYPx2m8yCM/bF/UZjOEhj7p8N0HoSxP/YvCtNZAmP/dJjOgzD2x/5FYTpLYN7hOT10Hgz2H2t/zd3phPOsEzudefZPh+k8CGP/sfZX2JTzwnnWge10xv7pMJ0HYeyP/YvCdJbA2D8dpvMgjP2xf1GYzhIY+6fDdB6EsT/2LwrTWQJj/3SYzoMw9sf+RWE6S2Dsnw7TeRDG/ti/KExnCYz902E6D8LYH/sXheksgbF/OkznQRj7Y/+iMJ0lMPZPh+k8CGN/7F8UprMExv7pMJ0HYeyP/YvCdJbA2D8dpvMgjP2xf1GYzhIY+6fDdB6EsT/2LwrTWQJj/3SYzoMw9sf+RWE6S2Dsnw7TeRDG/ti/KExnCTw7Pj4+ik45eFTonAyPirwG9h9rf4VNyZL1PM9Z4FEp2pln/3SYzoMw9h9rf4VNOS+cZx3YTmfsnw7TeRDG/ti/KExnCYz90+F17Pzx46ga2L+s/d+9G72D52cdz3MN2E5n7J8Or2PnR4/ChQvh7t3www8xNbB/Efu/excePw7/8R9hNhu9g+dnHc9zDdhOZ+yfDq9j50ePwmx2crU/DVi2/73HF0OYNdeHx1sLv7V18HYW3m7eq90wyv7v3oXHj//v3//9bAuwP50FMPZPh9ex86L9258Gfv3zn5fvYMD+116Hlt/vPb74emfnk9nO7suTzwfW7f/zz+G//iv867+uWHnsT2cBjP3T4XXsvNL+i58Gbt0K+/vzbw9Ut//uy1l4ea2P2blk1P790sf+IQQ6y2Dsnw6fdb56dWBE1/C6dSvs739++XJN+29ufggXDzZ7GWv2j5Q+V8914UL4+WdNFTh1HfZPh886Vz/uBq+bN8OzZ5Xtv3MphEu7g4w1+//nf4Z/+Zf6O+j6evRIUwVOXYf90+Gu/SvVMPTKz8ZGI30rr/x4tP88kZ8Gxu7g+fE9g/M0RxT7R8DYPx3G/mfSv3Pn14OD5TtUtr/HV36W0/9pYOwOnh/fMzgP9o+GsX86vO7239gId+6EFy96atT+ru/WwdvOj3g6tP88796FP/zh//7t37D/PNhfAmP/dHhN7d+Wfn+N2vZvHv9bP/az+3LW/MSnP/vP1/ndu/CHP4TLl7E/9pfA2D8dXkf7u3ynh62Dt7P53/aaq//s5/1PrqHvENix/zy80wP2F8CzYxtp3nHUV+adG/vXLRMZ5XW2YX8fV7NWmrvTiesZnOe3Bw/CbPbbgwdV+sTEzjrz7J8Or+Oz/0gY+4+1v8KmnBffMzgPz/7RMPZPh7H/IIz9sX9RGPtLYOyfDmP/QRj7Y/+iMPaXwNg/Hcb+gzD2x/5FYewvgbF/Ooz9B2Hsj/2LwthfAmP/dBj7D8LYH/sXhbG/BMb+6TD2H4SxP/YvCmN/CYz902HsPwhjf+xfFMb+Ehj7p8PYfxDG/ti/KIz9JTD2T4ex/yCM/bF/URj7S2Dsnw5j/0EY+2P/ojD2l8DYPx3G/oMw9sf+RWHsL4GxfzqM/Qdh7I/9i8LYXwJj/3QY+w/C2B/7F4WxvwS28r7Edt71ND68w/NgsP9Y+2vuTieuZ3Ae3uE5Pjz7p8M8+w/C2H+s/RU25bz4nsF5ePaPhrF/Ooz9B2Hsj/2LwthfAmP/dBj7D8LYH/sXhbG/BMb+6TD2H4SxP/YvCmN/CYz902HsPwhjf+xfFMb+Ehj7p8PYfxDG/ti/KIz9JTD2T4ex/yCM/bF/URj7S2Dsnw5j/0EY+2P/ojD2l8DYPx3G/oMw9sf+RWHsL4GxfzqM/Qdh7I/9i8LYXwJj/3QY+w/C2B/7F4WxvwTG/ukw9h+EsT/2LwpjfwmM/dNh7D8IXyEjo7Ap58X3DM6D/aNh7J8OY/9B+P79+7V16in3799X2JTz4nsG58H+0bCV9yW2866n8eEdnnWSvfObN2/evHmT956dsM464R2eJeHZPx3m2V8Hzt55b29vb29vbA3WWaeGtDPP/tEw9k+Hsb8OnL3z9evXb9y4MbYG66xTA/vr1MD+Ihj768B5Ox8eHjYvsh8eHnrprANPpDP2j4axfzqM/XXgvJ339vYa++/t7XnprANPpDP2j4axfzqM/XXgvJ2vX7/e2P/GjRteOuvAE+mM/aNh7J8OY38dOGPn+cs+Td68eZPrzp2s+TqrwdhfAmP/dBj768AZO89f9mmyu7ub686drPk6q8HYXwJj/3QY++vAGTvPX/Zp8rvf/S7XnTtZ83VWg7G/BMb+6TD214Fzde687NMk/uass04N7K9TA/uLYOyvA+fq/Pz582X7P3/+XH7n5azzOmvC2F8CY/90GPvrwLk6b21tLdv/q6++kt95Oeu8zpow9pfA2D8dxv46cJbOR0dH5723WuT9WWedGthfpwb2F8HYXwfO0nnlyz6jXvxhnXVqYH+dGthfBGN/HThL55Uv+4x68Yd11qmB/XVqnNj/KDrl4FGx1rmxf60a67POyXf+6aefzlN/k59++intzlkymXXWh1f85998E2az42++0azhdJ159k+Hj3j2V4Gzd26MP7YG66xTg2d/nRrYXwRjfx0Y++vAE+mM/aNh7J8OY38dGPvrwBPpjP2jYeyfDmN/HRj768AT6Yz9o2Hsnw5jfx0Y++vAE+mM/aNh7J8OY38dGPvrwBPpjP2jYeyfDmN/HRj768AT6Yz9o2Hsnw5jfx0Y++vAE+mM/aNh7J8OY38dGPvrwBPpjP2jYeyfDmN/HRj768AT6Yz9o2Hsnw5jfx0Y++vAE+mM/aNh7J8OY38dGPvrwBPpjP2jYeyfDmN/HRj768AT6Yz9o2Hsnw5jfx0Y++vAE+mM/aPh2bGNNO846ivzzo3965aJjOt1zpXG/nnv2UnRde6ZZ0mmcTZ+e/AgzGa/PXhQpU9M7Kwzz/7pMM/+OjDP/jrwRDrz7B8NY/90GPvrwNh/GX6/f3vxX6e5vf9efueJnA3sHw1j/3QY++vA2H8Zfr9/+1zlp955ImcD+0fD2D8dxv46MPZfhrF/E+wvgbF/Ooz9deBC9v/jH//45MmTP0ZnFPztt98WuvOTJ0/COfYX3rlo50HmL3/5S56zgf2jYeyfDmN/HTh7588++6z/H3k3ntB53f/hq+bPVa9RnuQ5G9g/Gsb+6TD214Gzdz48PPz++++///77J0+efB+dUfDe3l6hOzfP/gt59fDKyScA4Z2Ldu4HsL9+DewvgrG/DkznAfjVw7Pnf8GdK64z9tevgf1FMPbXgek8AL96eN53gO12bgf769fA/iIY++vAdF6C3+/fnj/sv3ro/+f9sb9+DewvgrG/DkznFfDCt317fvLTVufzg/31a2B/EYz9dWA668DYXwe2czawfzqM/XVgOuvA2F8HtnM2sH86jP11YDrrwNhfB7ZzNqy8L7Gddz2ND+/wrBM666Ri58b+Cf8h7/AsCc/+6TDP/jownXVgnv11YDtnA/unw9hfB6azDoz9dWA7ZwP7p8PYXwemsw6M/XVgO2cD+6fD2F8HprMOjP11YDtnA/unw9hfB6azDoz9dWA7ZwP7p8PYXwemsw6M/XVgO2cD+6fD2F8HprMOjP11YDtnA/unw9hfB6azDoz9dWA7ZwP7p8PYXwemsw6M/XVgO2cD+6fD2F8HprMOjP11YDtnA/unw9hfB6azDoz9dWA7ZwP7p8PYXwemsw6M/XVgO2cD+6fD2F8HprMOjP11YDtnA/unw9hfB6azDoz9dWA7Z8PK+xLbedfT+PAOzzqhs054h2ed2DkbPPunwzz768B01oF59teB7ZwN7J8OY38dmM46MPbXge2cDeyfDmN/HZjOOjD214HtnA3snw5jfx2Yzjow9teB7ZwN7J8OY38dmM46MPbXge2cDeyfDmN/HZjOOjD214HtnA3snw5jfx2Yzjow9teB7ZwN7J8OY38dmM46MPbXge2cDeyfDmN/HZjOOjD214HtnA3snw5jfx2Yzjow9teB7ZwN7J8OY38dmM46MPbXge2cDWf2397evkKis729nbbOCTtY/WyUrjGNzkzQqCxPkHxT7JwNZ/avfRj8JW2dE3aw+tkoXWManWufR3/Jvil2zoZL+38y2+EavFaeXTsnLx6mc0aYCRJOkHxT7JyN2fHx8VF0ysGR4eyOPbuS1fZ1NkrXmEZnJqjEBDk9Gzz7T/bi2b8ibLYzEyScIPmm2Dkb2H+yF/avCJvtzAQJJ0i+KXbOBvaf7IX9K8JmOzNBwgmSb4qds4H9J3th/4qw2c5MkHCC5Jti52xg/8le2L8ibLYzEyScIPmm2Dkb2H+yF/avCJvtzAQJJ0i+KXbOBvaf7IX9K8JmOzNBwgmSb4qds4H9J3th/4qw2c5MkHCC5Jti52xg/8le2L8ibLYzEyScIPmm2Dkb2H+yF/avCJvtzAQJJ0i+KXbOBvaf7IX9K8JmOzNBwgmSb4qds4H9J3th/4qw2c5MkHCC5Jti52xg/8le2L8ibLYzEyScIPmm2Dkb2H+yF/avCJvtzAQJJ0i+KXbOxuzYRpp3HB0MZ3fs2U1bZ1Ohc8YwQcIJksfO2eDZf7IXz/4VYbOdmSDhBMk3xc7ZwP6TvbB/RdhsZyZIOEHyTbFzNrD/ZC/sXxE225kJEk6QfFPsnA3sP9kL+1eEzXZmgoQTJN8UO2cD+0/2wv4VYbOdmSDhBMk3xc7ZwP6TvbB/RdhsZyZIOEHyTbFzNrD/ZC/sXxE225kJEk6QfFPsnA3sP9kL+1eEzXZmgoQTJN8UO2cD+0/2wv4VYbOdmSDhBMk3xc7ZwP6TvbB/RdhsZyZIOEHyTbFzNrD/ZC/sXxE225kJEk6QfFPsnI3a9v/4sflf7K9zdu2cvHiYzhlhJkg4QQPrfCq0ntg5G7Xt/+hRuHAh3L37t6dPY+7J2RWeXTsnLx6mc0aYCRJO0Mr8enAQ7t4NFy6ER48GYTtnw4D9Z7OT68KFcPdu+OGHHtzI2b33+GIIs+b68Hjr9Ne3Dt6e/GJ4u3mvdknsXxE229nNBL28Vr3ksP1fvDiR/lxi7uxfMb89eHC2cKfXPzc2/v7117/++c/LvIGze+11W+73Hl98vdMc3IsHmye/uPuy/ieAZq06C2jn3WXjQ+eMMTxBO7sv5xN07XXrs4KhCTo+Pv714ODvX3/9z42NZXf99uDB4BbYORuWnv2XrwsXwq1bYX9//mpa9bO7+zLuqWTnUgiXdg2c3c5623nuiIfpnBH2MkG7L63Y/2ThPn4M+/vh1q3Wk/7y5e7ZP//dr17tW6C069atsL//+eXLNc/u5uaHcPaA33ftXDLy7N/ZGTsnLx6mc0a4sv0jJyh+0ApP0OeXL59IP7vQrl6tfjbK2D/7Ss1m4ebN8OxZZfvHPtFvHbw19uRyGrNW6gmdM8KV7T8wQdden3wzoPLXzfMJ+vzy5fDsWbh5s4jTap+NgvbP8MrPxkYjfSuv/MTZ38KL/p9g/6qw2c4uJuiTzc0PZl73P1m4jx9PPg2sern/7Ip85Qf7h3CO/Tc2wp074cWLZdz+161G1N89u6cxa6We0DkjbH+Cmuve44vV5+jcn/l58SLcubP60wD2T7T/+dKfp/b3rAZe0rGj/vPOrlkr9YTOGWHjEzS/TNt/nuVPA9h/nP03NsKdO3/7059iblz77J58Tbr4Qwu7L2enP69m4oeU+8+uWSv1hM4ZYcMTdO31me4N/cRnzDr/enBw8mkA+4+wv8t3elj4OynhRP2f7Fya/0qw8Z0r7F8RNtvZ7gS1h+jsF41N0MA6R77TA/ZfjCv7+7iwf0XYbGcmSDhB8k3B/t1gf52za9ZKPaFzRpgJEk6QfFOwfzfYX+fsmrVST+icEWaChBMk3xTs3w321zm7Zq3UEzpnhJkg4QTJNwX7d4P9dc6uWSv1hM4ZYSZIOEHyTcH+3WB/nbNr1ko9oXNGmAkSTpB8U2zZP3vm9o9P5LuecnbHnt20dTYVOmcMEyScIHnm9s9+57Hh2X+yF8/+FWGznZkg4QTJN8XWs3/+u2N/Axf2rwib7cwECSdIvinYvxvsr3N2zVqpJ3TOCDNBwgmSbwr27wb765xds1bqCZ0zwkyQcILkm4L9u8H+OmfXrJV6QueMMBMknCD5pmD/brC/ztk1a6We0DkjzAQJJ0i+Kdi/G+yvc3bNWqkndM4IM0HCCZJvCvbvBvvrnF2zVuoJnTPCTJBwguSbgv27wf46Z9eslXpC54wwEyScIPmmYP9usL/O2TVrpZ7QOSPMBAknSL4p2L8b7K9zds1aqSd0zggzQcIJkm8K9u8G++ucXbNW6gmdM8JMkHCC5JuC/bvB/jpn16yVekLnjDATJJwg+aZg/26wv87ZNWulntA5I8wECSdIvim27H8UnUh4bv/4O0eGszv27EpWu8TZSIBHhc79MBNUYoLGno3GkNnvPBbm2X+yF8/+FWGznZkg4QTJN+XI1LN//rtjfwMX9q8Im+3MBAknSL4p2L8b7K9zds1aqSd0zggzQcIJkm8K9u8G++ucXbNW6gmdM8JMkHCC5JuC/bvB/jpn16yVekLnjDATJJwg+aZg/26wv87ZNWulntA5I8wECSdIvinYv5tR9ifxSVvnJpg0GTbbufZ59Jfsm4L9u4mclvv379c+DJ5y//79tHVugkmTYbOdmaBRWZ4g+aZg/27MTktP5p0PDw8PDw9r1Vifda5bg87laixOkJfOyTD278brLoYQQtjb29vb26tVY33WuW4NOpersThBXjonw9i/G6+7GEII4fr16zdu3KhVY33WuW4NOpersThBXjonw9i/G6+7GMLh4WHzEmH/iz+mOlevQWedGi46dybIRWcJjP278bqLIezt7TVnt//FH1Odq9egs04NF507E+SiswTG/t143cUQrl+/3pzd/hd/THWuXoPOOjVcdO5MkIvOEtiW/bNnbv/4NO846itHR0dv3rxZ/PmwN2/e1C41EKfrXLvC6NA5MsIJcrrOCYYsEZ790+Gjo6P5F62DL/7Y6WyhBp11atjvvDxB9jsLYVvP/vnvvjb2n3/ROvjij53OFmrQWaeG/c7LE2S/sxDG/t143MUff/xx+S8HnvcHMdLZ4zrTWQfW7zz/aZ/F/PLLL/F39rrO2H8xHnfxu+++Wz67z58/V64x+XWmsw6s3/n58+fLE/T06dP4O3tdZ+y/GI+7+MUXXyyf3a+++kq5xuTXmc46sH7nra2t5Qn68ssv4+/sdZ2x/2Lc7eLR6T+QHfnij4XOweE6Bzprwcqdx07QynhdZ+y/GHe7uPKL1p4Xfyx0Dg7XOdBZC1buPHaCVsbrOmP/xbjbxZVftPa8+GOhc3C4zoHOWrBy57ETtDJe1xn7L8bXLvZ80Xrel67VOzfxtc5N6KwDa3ZOmKDqnXPB2L8br7sYQjj995Jq1Vifda5bg87laixOkJfOyTD278brLoYQsH9hmM46MPbXgbF/N153MYSA/QvDdNaBsb8OjP278bqLIQTsXximsw6M/XVg7N+N110MIWD/wjCddWDsrwPbsn/2rM87PDcfNGe3apfYuF5nR6HzqCRPkNN15h2eW/H6OTyEwLN/YZjOOjDP/jqwrWf//HfH/oo11med69agc7ka2F+/BvYXwdhfB6azDoz9dWDs343XXQwhYP/CMJ11YOyvA2P/brzuYggB+xeG6awDY38dGPt343UXQwjYvzBMZx0Y++vA2L8br7sYQsD+hWE668DYXwfG/t143cUQAvYvDNNZB8b+OjD278brLoYQsH9hmM46MPbXgbF/N153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" alt="" />

3.多态

多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。
那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
 
Pyhon不支持多态并且也用不到多态,多态的概念是应用于Java和C#这一类强类型语言中
 
 

方法:

 普通方法:由对象调用;至少一个self参数;执行普通方法时,自动将调用该方法的对象赋值给self;
 类方法:由类调用; 至少一个cls参数;执行类方法时,自动将调用该方法的类复制给cls;
 静态方法:由类调用;无默认参数;
 属性方法:Python中的属性其实是普通方法的变种;  
 内置方法: '__dict__', '__doc__', '__init__', '__module__', '__new__', '__repr__', '__str__' 等;
class Foo:
def __init__(self, name):
""" 定义内置方法,至少有一个self参数 """
self.name = name def ord_func(self):
""" 定义普通方法,至少有一个self参数 """
print('普通方法') @classmethod
def class_func(cls):
""" 定义类方法,至少有一个cls参数 """
print('类方法') @staticmethod
def static_func():
""" 定义静态方法 ,无默认参数"""
print('静态方法') @property
def property_fuc(self):
""" 定义属性方法,至少有一个self参数 """
print('属性方法') # 调用普通方法
f = Foo('那么')
f.ord_func()
# 调用类方法
Foo.class_func()
f.class_func()
# 调用静态方法
Foo.static_func()
f.static_func()
# 调用属性方法
f.property_fuc

  实例是可以访问类方法和静态方法的,但不建议这样做,容易混淆。 

变量

变量包括:类变量和实例变量,他们在定义和使用中有所区别,而最本质的区别是内存中保存的位置不同。实例变量属于对象,类变量属于.
类变量在内存中只保存一份,实例变量在每个对象中都要保存一份。
class Province:
# 类变量
country = '中国' def __init__(self, param1):
# 实例变量
self.name = param1
# 直接访问普通字段
obj = Province('北京')
print(obj.name)
# 直接访问静态字段
print(Province.country)
print(obj.country)

  我们可看到同方法相似,实例也是可访问类变量的。

对于每一个类的变量而言都有两种形式:

  • 公有变量,在任何地方都能访问
  • 私有变量,只有在类的内部才能方法
class A:
name = "公有类变量"
def func(self):
print(A.name)
class B(A):
def show(self):
print(A.name)
A.name # 类访问
obj = A()
obj.func() # 类内部可以访问
obj_son = B()
obj_son.show() # 派生类中可以访问

  

class C:
__name = "私有类字段"
def func(self):
print(C.__name)
class D(C):
def show(self):
print(C.__name)
C.__name # 类访问 ==> 错误
obj = C()
obj.func() # 类内部可以访问 ==> 正确
obj_son = D()
obj_son.show() # 派生类中可以访问 ==> 错误

  

class C:

    def __init__(self):
self.foo = "公有实例变量" def func(self):
print(self.foo) # 类内部访问 class D(C):
def show(self):
print(self.foo) # 派生类中访问 obj = C()
obj.foo # 通过对象访问
obj.func() # 类内部访问
obj_son = D()
obj_son.show() # 派生类中访问

  

class C:

    def __init__(self):
self.__foo = "私有实例字段" def func(self): print(self.__foo) # 类内部访问 class D(C): def show(self):
print(self.__foo) # 派生类中访问 obj = C()
obj.__foo # 通过对象访问 ==> 错误
obj.func() # 类内部访问 ==> 正确
obj_son = D()
obj_son.show() # 派生类中访问 ==> 错误

  

注:

非要访问私有属性的话,可以通过 对象._类__属性名  (  print(obj._C__foo)  

新式类&经典类

新式类很早在2.2就出现了,所以经典类(旧式类)完全是兼容的问题,Python3里的类全部都是新式类.

python2.X中

#新式类
class C(object):
pass
#经典类
class B:
pass

python3.X中 由于没有经典类,所以上述两种写法都表示新式类。

**python中的类和他的成员的更多相关文章

  1. Python中的类、对象、继承

    类 Python中,类的命名使用帕斯卡命名方式,即首字母大写. Python中定义类的方式如下: class 类名([父类名[,父类名[,...]]]): pass 省略父类名表示该类直接继承自obj ...

  2. python中的类和实例

    今天花了两个多小时后搜索相关博客看了看python中有关类和实例的介绍,差不多大概明白了. python中的类和c++中的类是一样的,不同之处就是c++的类,如果含有成员变量,并且成员变量发生变化后, ...

  3. 4、Python中的类详解(0601)

    <大话数据结构>的作者程杰在博客园也有博客,网址是:http://cj723.cnblogs.com/ 面向对象编程(OOP) 1.程序 = 指令 + 数据 代码可以选择以指令为核心或以数 ...

  4. python中的类(二)

    python中的类(二) 六.类的成员 字段:普通字段,静态字段 eg: class Province(): country=’中国’ #静态字段,保存在类中,执行时可以通过类或对象访问 def __ ...

  5. Python基础之:Python中的类

    目录 简介 作用域和命名空间 class 类对象 类的实例 实例对象的属性 方法对象 类变量和实例变量 继承 私有变量 迭代器 生成器 简介 class是面向对象编程的一个非常重要的概念,python ...

  6. Python中的类(上)

    在Python中,可以通过class关键字定义自己的类,然后通过自定义的类对象类创建实例对象. 例如,下面创建了一个Student的类,并且实现了这个类的初始化函数"__init__&quo ...

  7. python中新式类和经典类

    python中的类分为新式类和经典类,具体有什么区别呢?简单的说, 1.新式类都从object继承,经典类不需要. Python 2.x中默认都是经典类,只有显式继承了object才是新式类 Pyth ...

  8. Python中的类(一)

    Python中的类(一) 一. 应用场景 如果多个函数中有一些相同的参数时,转换成面向对象. 二. 如何创建类 类是用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法 ...

  9. 关于Python中的类普通继承与super函数继承

    关于Python中的类普通继承与super函数继承 1.super只能用于新式类 2.多重继承super可以保公共父类仅被执行一次 一.首先看下普通继承的写法 二.再看看super继承的写法 参考链接 ...

随机推荐

  1. js学习笔记知识点

    AJAX用法安全限制JSONPCORS面向对象编程创建对象构造函数原型继承class继承 AJAX 用法 AJAX不是JavaScript的规范,它只是一个哥们“发明”的缩写:Asynchronous ...

  2. Python系列文章索引

    >>> import this The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is ...

  3. onerror="javascript:this.src='images/defaultUpload.png';"【容易导致死循环报错】

    当无法找到默认图片时,onerror="javascript:this.src='images/defaultUpload.png';"容易导致死循环报错

  4. 基于 task 为 VSCode 添加自定义的外部命令

    我们有很多全局的工具能在各处使用命令行调用,针对某个仓库特定的命令可以放到仓库中.不过,如果能够直接为顺手的文本编辑器添加自定义的外部命令,那么执行命令只需要简单的快捷键即可,不需要再手工敲了.   ...

  5. 借助CustomBehaviorsLibrary.dll写出水印效果(转)

    在项目中载入这个dll 之后引用 使用方法具体如下图: 在这里需要注意到是项目中对interactivity的引用 :       好文要顶 关注我 收藏该文  

  6. Docker的主要组件

    Docker 的主要组件 安装 docker ,其实是安装了 docker 客户端.dockerd 等一系列的组件,其中比较重要的有下面几个. Docker CLI(docker)docker 程序是 ...

  7. [Oracle] CPU/PSU补丁安装详细教程

    Oracle CPU的全称是Critical Patch Update, Oracle对于其产品每个季度发行一次安全补丁包,通常是为了修复产品中的安全隐患,以下是对CPU/PSU补丁安装的具体操作步骤 ...

  8. 什么是spark(一) 分区以及和MR的区别

    什么是spark,是一个分布式计算平台,或者说是分布式计算引擎,他的职责就是将指定的数据读入到各个node的内存中,然后计算.所以spark是具有泛化性质的,只要数据源是可读入的,读到内存里面之后,处 ...

  9. 解决Oracle的http://localhost:1158/em页面打不开的问题

    https://localhost:1158/em 无法显示页面,在网上查阅资料以后发现这个页面时由服务:OracleDBConsoleoracl控制的,所以到管理界面打开服务:OracleDBCon ...

  10. php分页类 可直接调用

    <?php /** * 分页类 * @author xyy * 调用分页实例 $subPages=new SubPages(数据总条数);//实例化分页类 * //$subPages->s ...