> 백엔드 개발 > PHP 튜토리얼 > php-框架 - PHP,什么时候用到静态方法最为合适?

php-框架 - PHP,什么时候用到静态方法最为合适?

WBOY
풀어 주다: 2016-06-06 20:39:15
원래의
979명이 탐색했습니다.

现在想写一个基本的框架练练手,也参考了几个框架,问题如下:
1. 什么时候用到静态方法最为合适?
2. 是不是静态方法用的越多,越不像面向对象了?

补充一下:是不是当我们有很多个属性全局不变的时候,但是多个地方用到的时候,这个时候写成静态类,比如操作路由。。我理解的对吗?

回复内容:

现在想写一个基本的框架练练手,也参考了几个框架,问题如下:
1. 什么时候用到静态方法最为合适?
2. 是不是静态方法用的越多,越不像面向对象了?

补充一下:是不是当我们有很多个属性全局不变的时候,但是多个地方用到的时候,这个时候写成静态类,比如操作路由。。我理解的对吗?

在 Java 这种语言里,方法(函数)是没法独立于类存在的,所以所有的方法都必须包含在类中,如果这个方法和具体的实例无关,那么通常就定义为静态方法。如果有一组相关的这样的方法,那么就把它们放到一个类中,这个类只有静态方法。

回到 PHP, 因为历史遗留问题,PHP 的命名空间对函数支持比较差,所以也到了和 Java 差不多的情况。因此,在 PHP 中将与实例无关的函数定义为一个类的静态方法,也是一种比较常见的设计,在 Laravel 中大量被用到。

1、与实例逻辑无关,与类逻辑有关,就用静态方法,例如factory()

2、基本上可以这么说,用得越多越不面向对象,因为静态类本质上跟纯函数没区别

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿