- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试了解有关面向对象编程的更多信息。
我正在尝试创建一个代表此图像中的锥形对象的类。
A : 连接直径
B:直径
C:高度
但对我来说,选择锥体时有一些差异
1)圆锥连接是否会大于直径,否则您有一个扩大圆锥,否则是一个缩小圆锥。为此,我基于在构造函数中设置的枚举创建了一个只读属性。这是在创建圆锥体对象时设置的并且是固定的。
2)你想如何标注它。图像有 3 个维度,但还有第四个维度是角度。如果高度是前导尺寸,则应计算角度,如果角度是前导尺寸,则应计算高度。同样为此,我基于在构造函数中设置的枚举创建了一个只读属性。
但是我应该如何标记我的属性?在一种情况下,高度应该是只读的,在另一种情况下是角度。你如何处理这样的情况?
Public Class Cone
Public ReadOnly Property ConeType As ConeTypeEnum
Public Enum ConeTypeEnum
kExpansion = 1
kReduction = 2
End Enum
Public ReadOnly Property DimensionType As DimensionTypeEnum
Public Enum DimensionTypeEnum
kAngle = 1
kHeight = 2
End Enum
Public Property Height As Double
Public Property Diameter As Double
Public Property ConnectionDiameter As Double
Public Property Angle As Double
Public Sub New(ByVal oConeType As ConeTypeEnum,
ByVal oDimensionType As DimensionTypeEnum)
ConeType = oConeType
DimensionType = oDimensionType
End Sub
End Class
最佳答案
这是我要做的:
从当前 A
动态确定圆锥类型属性和 B
在只读属性中。这 - 据我了解 - 只是您拥有哪种锥型的指标。
所有其他属性都可以读/写,更新各自的其他属性。例如。如果用户改变角度,重新计算高度。如果用户改变高度,重新计算角度等。
如果你真的想设置锥体类型,我会在调用构造函数时这样做。然后更改其他属性,以便它们在 A
的情况下抛出异常和 B
不适合当前的锥型。
另一种方法是定义一个接口(interface) ICone
具有所有必需的属性并从中派生到类 ExpansionCone
和 ReductionCone
相应地实现 getter/setter。
关于VB.NET 创建一个带有可选输入的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36305325/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!