我需要创建一个接口或抽象类java样式。 Money是一种协议,相当于Java接口。
在Euro类中实现接口(协议),但它在函数时间中给出了错误。
在函数时间我使用多态并返回Money,因为Euro实现了Money接口(协议),但我有一个错误:"使用未声明的类型' Money'。为什么?
protocol Money {
var amount: Int {get set}
func times(multiplier: Int) -> Money
init (amount: Int)
}
class Euro : NSObject, Money {
internal var amount: Int
required init(amount: Int) {
self.amount = amount
}
func times(multiplier: Int) -> Money {
return Euro(amount: self.amount * multiplier)
}
override func isEqual(object: AnyObject?) -> Bool {
return self.amount == (object as! Euro).amount
}
}
答案 0 :(得分:0)
例如,如果我创建Euro
的实例,然后调用其.times
方法,那么您的代码似乎适用于Swift 2 Xcode 7.0 beta 4。例如:
var xEuro = Euro(amount: 10)
print(xEuro.times(2).amount)
答案 1 :(得分:0)
这是解决方案...... http://roadfiresoftware.com/2014/06/unit-testing-with-swift/
要使用XCTest测试Swift类,您需要将该类添加到测试目标。 (希望这是一个暂时的黑客攻击,但是自从Swift处于测试阶段以来就是这样。我不会屏住呼吸。)因此,在编辑器中选择并显示您的类后,请查看文件检查器中的目标成员资格部分。 (右侧窗格)确保选择了应用目标和测试目标。