PHP的面向对象究竟是什么概念?山东
展开全部
这样说吧,
在我们初步学习的面向过程程序设计方法,比如C语言中:
程序=算法+数据结构;
但是面向对象程序设计方法,如C++,和后来的PHP等语言:
程序=(算法+数据结构);
就是说算法与数据结构组成一个整体,而这个整体就是类,把类详细化了就是一个一个具体的对象。
比如定义一个类,再用类声明一个对象:
class Student()
{....functions()
protected:
int a;
char b;
}
Student xiaobai;
Student就是一个类,xiaobai就是一个对象。
像楼主说的那样,对象除了封装方法(我们也可以称之为算法)之外,还可以有一些数据成员,比如上面的a,b,所以类封装不只封装了算法,还有这些算法之下的数据!
从某方面来说,面向对象是函数的升级,因为这类也是可以在主函数外定义的,这也可以将其看作是一种特殊的函数(个人看法啊),我们可以调用这“函数”中的数据和方法。所以楼主说的在广义上也是成立的!
另外,建议楼主先阅读下C++有关课程的关于面向对象的论述,可能会对你有所帮助!
▲
在我们初步学习的面向过程程序设计方法,比如C语言中:
程序=算法+数据结构;
但是面向对象程序设计方法,如C++,和后来的PHP等语言:
程序=(算法+数据结构);
就是说算法与数据结构组成一个整体,而这个整体就是类,把类详细化了就是一个一个具体的对象。
比如定义一个类,再用类声明一个对象:
class Student()
{....functions()
protected:
int a;
char b;
}
Student xiaobai;
Student就是一个类,xiaobai就是一个对象。
像楼主说的那样,对象除了封装方法(我们也可以称之为算法)之外,还可以有一些数据成员,比如上面的a,b,所以类封装不只封装了算法,还有这些算法之下的数据!
从某方面来说,面向对象是函数的升级,因为这类也是可以在主函数外定义的,这也可以将其看作是一种特殊的函数(个人看法啊),我们可以调用这“函数”中的数据和方法。所以楼主说的在广义上也是成立的!
另外,建议楼主先阅读下C++有关课程的关于面向对象的论述,可能会对你有所帮助!
▲
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询