Java 除了继承,在实时web开发中,其他OO特性有什么重要作用吗?

Java 除了继承,在实时web开发中,其他OO特性有什么重要作用吗?,java,php,oop,Java,Php,Oop,在web开发中,我们使用java.net或php5。 都是OO。并且具有所有OO特性 但在实时网站中,这些OO特性除了继承之外,还有什么重要作用吗 任何人都可以列出一些实时的例子 在应用程序开发中,OO可能有着广泛的用途。 但对于网站来说,OO是否扮演了主要角色? 怎么做?我大量使用封装和多态性。具体地说,我使用策略模式(以及其他模式)来划分我的很多功能。当与依赖注入相结合时,我可以很容易地将持久层的功能与业务逻辑或表示层分离 例如,将hibernate实现与JDBC实现等交换是很简单的。实际上

在web开发中,我们使用java.net或php5。 都是OO。并且具有所有OO特性

但在实时网站中,这些OO特性除了继承之外,还有什么重要作用吗

任何人都可以列出一些实时的例子

在应用程序开发中,OO可能有着广泛的用途。 但对于网站来说,OO是否扮演了主要角色?
怎么做?

我大量使用封装和多态性。具体地说,我使用策略模式(以及其他模式)来划分我的很多功能。当与依赖注入相结合时,我可以很容易地将持久层的功能与业务逻辑或表示层分离

例如,将hibernate实现与JDBC实现等交换是很简单的。实际上,最近,我刚刚从一个与web请求同步运行的电子邮件服务切换到一个使用消息队列异步发送邮件的服务。一旦实现了新层,我所要做的就是更改将哪个类注入到使用它的bean中


编辑:为了回应您的评论,@zod,我不会在执行的页面上使用它,尽管这种情况不时发生(例如,根据用户的请求,我有不同的HTML电子邮件和纯文本电子邮件类)但我主要在应用程序的配置中使用OO主体。这有意义吗?

首先,OO的主要原则派上了用场;事实上,你可以有一个用户模型来处理所有用户的事情,这意味着所有与用户有关的事情都封装在这个模型中。这使得以后添加和修改功能更加容易。当您想用其他人编写的代码扩展您的程序时,扩展性也很方便。只要知道它们类的公共接口,就可以使用它们

举一个简单的例子,作为一家公司,我们大量使用it进行安全保护。我们有各种框架的插件,可以控制谁尝试访问哪个类和方法。除此之外,我们可以避免用户在不向类中添加额外行的情况下访问该类和方法

除此之外,我们还使用它们来澄清代码

除了所有那些使用OOP的人之外,使用大型团队创建大型项目也是一个很好的方法。

早在1995年,这本书就在第20页成功地提出了这一惊人的见解:

支持对象组合而不是类继承

从那时起,正确的对象定向就是这样,而不是继承。特别是,这些原则描述了一组面向对象的原则,适用于可维护性非常重要的任何代码库。多态性很重要,但遗传是不相关的


这适用于web应用程序以及任何其他类型的应用程序。

你为什么关注实时网站?@DJClayworth我认为OP的意思是“在现实中”。这是正确的@zod吗?@DJ&Chris,我是一名PHP开发人员,现在每个人都在谈论OOP,我只是想知道我可以在网站开发的所有领域使用这个OOP。我主要看到到处都是继承性和可重用性。我不知道在何处实现其他功能:-)正如您所说,您使用的是encaps&poly,那么您的意思是,您有一些函数将从不同的页面调用,并将根据调用的位置和方式执行不同的功能。我的理解正确吗。作为一个门外汉,我只想理解一下:代码分离,视图、数据和控制器的划分,所以框架的出现仅仅是因为OOP。好的观点:-)