腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
在
PHP
中
,
在
父
方法
接受
任何
类型
的
子类
方法
中
指定
参数
类型
会
中断
LSP
吗
?
、
、
如果我
的
接口有一个
方法
: doSomething($param); 我
的
实现这个接口
的
类
指定
了
参数
类型
,如下所示: doSomething(int $param) {} 这会破坏
LSP
吗
?
浏览 20
提问于2020-07-07
得票数 1
回答已采纳
3
回答
我对Liskov替代原则有什么误解?
、
我以为我理解
LSP
,但看来我完全错了。value) {} public function foo(PrimitiveValue $value) {} 根据我
的
理解,类B
中
浏览 6
提问于2015-02-06
得票数 3
回答已采纳
2
回答
使用来自同一BaseClass
的
不同
类型
重写
PHP
8
方法
、
我
的
项目
在
PHP
7.x上运行良好,
在
升级到
PHP
8之后,我遇到了以下问题,我不知道如何解决这个问题。 我有以下(简化
的
)情况: <?
php
{} {} public function output(Car
浏览 25
提问于2020-12-29
得票数 0
回答已采纳
2
回答
PHP
对
LSP
有错
吗
?
、
但我不确定
LSP
是不是这么说
的
?
PHP
_EOL;} {} doSomething(Specific::create()); 使用指针或基类引用
的
函数必须能够
在<
浏览 2
提问于2018-04-16
得票数 3
5
回答
削弱前提条件,强化后条件,难道不也违反李斯科夫替代原则
吗
?
、
、
、
这是强化前
的
条件,现在
任何
代码,如果以前与负ints完全正常工作,就会被破坏。 同样,假设同样
的
场景,但是基类用来保证成员在被调用后是正
的
。然后,
子类型
更改行为以允许负ints。( a)当重写
方法
削弱时,为什么它也不被认为是违反
LSP
的
前提条件,因为该
方法
可以使用基
类型
的
契约不能
接受
的
参数
。因此,难道我们不能声称基本
类型
<e
浏览 2
提问于2013-05-08
得票数 10
1
回答
mypy:与超级
类型
"tuple“不兼容
的
"__add__”签名--但一切都可以使用__sub__。
、
、
我正在创建一个简单
的
向量类,并且我很难理解mypy是如何处理我
的
__add__和__sub__
方法
的
(特别是代码1
中
的
类型
输出与下面的代码3
中
的
不同之处)。def __sub__(self, other: Vector) -> Vector:
在
使用代码第二(这让我更加困惑),为什么我不能从代码3
浏览 3
提问于2020-12-29
得票数 0
回答已采纳
2
回答
“部分功能扩展功能”是否违反了
LSP
?
、
Liskov代换原理指出: 如果S是T
的
子类型
,那么T
类型
的
对象可以替换为S
类型
的
对象,而不会改变该程序
的
任何
理想属性。但是,
在
Scala
中
,并不是所有情况下都适用/定义了PartialFunction。
在
scala
中
创建PartialFunction
的
一种方便
方法
是使用模式匹配。这样做,您将收到一个用于未定义值
的
M
浏览 8
提问于2016-11-03
得票数 6
回答已采纳
3
回答
重载(不覆盖)是否破坏了Liskov
的
替换原则?
、
、
、
有很多关于
LSP
的
讨论,但似乎都过于模糊了。AFAIK,
LSP
指出,要正确地覆盖
子类
中
的
超类
方法
(而不是重载),应该确保子
方法
: signaturereturns 不会产生一种新
的
异常
类型
,在
任何
情况下都不会由
父
方法
引发,具有与
父
方法
(
在
强
类型
语言情况下semantic meaning
浏览 2
提问于2020-05-22
得票数 2
3
回答
当扩展一个抽象类时,有没有办法重新定义一个
子类
的
类型
提示?
会
抛出一个致命
的
错误,告诉你Declaration of SimpleFactory::update() must be compatible with that of AbstractFactory::update() 我完全理解这意味着什么:SimpleFactory::update()
的
方法
签名必须与其父抽象类
的
方法
签名完全匹配。然而,我
的
问题是:有没有办法允许具体
的
方法
(
在
本例
中
为Simpl
浏览 4
提问于2009-12-14
得票数 32
回答已采纳
3
回答
为什么Liskov替代原理需要这个论点是相反
的
?
、
在
派生类
中
强加于
方法
签名
的
规则之一是: 如果我正确理解,这是说派生类
的
过脊函数应该允许反式
参数
(Supertype
参数
)。但是,我不明白这个规则背后
的
原因。由于
LSP
主要讨论
的
是动态绑定
类型
和
子类型
(而不是超级
类型
)以实现抽象,因此允许将超级
类型</
浏览 4
提问于2016-10-31
得票数 12
回答已采纳
2
回答
在
PHP
7
中
重写抽象函数
参数
类型
提示
、
是否有可能在
PHP
7
中
用
子类
中
的
函数覆盖抽象函数,从而缩小可
接受
的
参数
类型
?让我们假设我有一个抽象
的
方法
:现在,
在
一个
子类
中
,我想重写该
方
浏览 5
提问于2017-12-13
得票数 10
回答已采纳
1
回答
为什么这个类层次结构违反了
LSP
?
、
、
下面是在线教程()
的
代码:public class SumCalculator protected readonly int[] _numbers; }所以我们可以将子实例(new EvenNumbersSumCalculator(numbers))存储到
父
变量(SumCalculator evenSum )
中
,所以上面的代码符合Liskov原则,不是
浏览 5
提问于2021-11-16
得票数 1
回答已采纳
2
回答
PHP
中
的
“重载”私有
方法
、
、
我知道我不能在
PHP
中
重载
方法
。而且,据我所知,类
中
的
private
方法
对于扩展基类
的
类是不可见
的
。那为什么这不管用呢?extends Base { print "Child";} print $c->foo();
PHP
Standards: Declaration of Child::foo(
浏览 2
提问于2013-08-17
得票数 9
回答已采纳
2
回答
在
C#
中
实现与Liskov兼容
的
方法
参数
的
逆方差
、
、
、
试着练习
LSP
,我不太清楚以下几点: Liskov requirements (有些) -There必须是subtype.中
方法
参数
的
反向方差--
子类型
中
的
返回
类型
必须是协方差。另外,
子类
中
的
方法
可以使用比基类更通用
的
参数
类型
来声明,对
吗
?但据我所知,这是行不通
的
,正如我
在
浏览 0
提问于2018-01-29
得票数 0
回答已采纳
1
回答
李斯科夫代换原则与正常继承有何不同?
、
、
我
在
试着理解Liskov替代原理。但我无法确定Liskov代换原则与正常继承有何不同。下面的代码是关于正常继承
的
。我应该对下面的代码做些什么,说我
的
代码遵循Liskov替换原则 { public virtual void MethodA()
浏览 1
提问于2019-11-17
得票数 3
回答已采纳
2
回答
Java
中
的
面向对象多态逻辑
、
、
在这两种实现
中
,我们都可以对猫和狗对象使用相同
的
命名getWeight()
方法
。我找不到两个实现之间
的
任何
区别。在这里使用多态性或重写有什么好处
吗
?
浏览 0
提问于2021-03-07
得票数 0
4
回答
禁止否定整数
的
子类
整数是否破坏了Liskov替换原理?
、
、
、
、
在
Python3
中
,我对int进行
子类
,以禁止创建负整数: def __new__(cls, value):这会破坏Liskov代换原理
吗
?
浏览 0
提问于2022-11-06
得票数 21
回答已采纳
3
回答
JavaScript事件系统是否违反了
LSP
?
、
、
但是,情况通常并非如此,因为事件侦听器通常使用专门
的
Event
子类型
的
属性。虽然每个人似乎都在关注
浏览 0
提问于2017-04-06
得票数 15
回答已采纳
4
回答
PHP
抽象类返回
子类
的
类型
、
、
PHP
中
的
抽象类如何返回扩展它
的
子类
的
类型
?现在,如果我在
任何
子类
中
调用fromID(var)
方法
,它们将返回一个MyAbstractClass
类型
的
对象。如何在MyAbstractClass
中
定义该函数
的
返回
类型
,这样就不会让
任何
子类
调用该
方法
,它将返回<
浏览 10
提问于2022-01-25
得票数 1
1
回答
如何
接受
一个不太通用
的
动态
类型
作为
子类
的
参数
?
、
、
、
根据受启发
的
,我带着这个问题回到Stack Overflow。 假设我有一个有许多
子类
的
类,比方说UIControl。我想用一个
方法
来扩展这个类。此
方法
应作为其
参数
之一,
接受
其相同
类型
的
对象。但是对于
任何
和所有此类
子类
,此
方法
只应
接受
其自身
类型
的
参数
。例如,UIButton应该只
接受
UIBut
浏览 1
提问于2014-12-11
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C#高级语法之泛型、泛型约束,类型安全、逆变和协变
转向Kotlin——泛型
Python3.6内置函数——super
打卡,巩固一下PHP基础知识
Java 泛型 T,E,K,V,?,傻傻分不清?
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
腾讯会议
活动推荐
运营活动
广告
关闭
领券