php对比python_python学习之面向对象(与PHP对比)

python学习之面向对象(与PHP对比)

撰写于

2011-12-08 分类: python 标签:

python

面向对象

面向对象这个词大家肯定不陌生了~~Python就是一门面向对象编程语言,当然也支持面向过程。

简单的说,我们的程序用一些函数和语句来操作数据,这就是面向过程编程,而把某些功能整合在一起、模块化、功能化调用,然后把某一类的这些功能模块结合起来形成一个我们称之为“对象”的东西,这就是面向对象编程了。

上面的叙述可能不是很规范,大致的意思就是了。

类的实例/对象里面通常有变量和函数构成,python把这些变量称为域,函数称为方法,他们俩统称为类的属性。学过其他编程的或多或少对面向对象都有写了解,概念虽然不完全一致,但意思都是相通的。

就和PHP对比吧:

1、定义关键字

PHP和python都是用class定义类,一般类的首字母大写,几乎完全一致。

2、类的一个额外名称:

这个额外名称就是PHP里面的this,python的self,他们不用被定义,默认代表这个类的本身。用法也都差不多,只是形式上的差别:

PHP:this->     Python:self.

3、方法的定义

PHP里面定义方法,也就是自定义函数,和在类外边自定义函数没有区别,而Python要加上一个参数self,必须要的,一般是第一个参数。而在实例化类变成一个对象之后,调用对象里面的方法不用写这个参数,比如:在类里面定义:def  addName(self, name){ },那么在实例化之后就直接module.addName(name)这样写。

4、构造函数和析构函数

PHP构造函数__construct(),析构函数__destruct(),Python则是__init__()和__del__()。他们的作用都大同小异,引用的时候初始化一些值,结束后释放一下。

5、类的继承

PHP类的继承:通过extends语句,而Python的继承则不同,子类继承父类,在定义的时候把父类放在一个元组里,例如:

父类:class  TestFather:

子类:class  TestSon(TestFather):

这个我第一次没看出来,呵呵,琢磨半天怎么继承的,还是学PHP太久了,思维僵硬了。

OK,就总结这么多吧,通过和PHP的对比能使我接受的更快~~

前几天已经把一部很简单的Python教程看完了,今天开始看一部很详细的教程,基础要扎实嘞,继续!GO ON……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值