Android - Android 的任何对象,如 iOS Swift 2
Android - AnyObject for Android like iOS Swift 2
我需要帮助,这是 Swift 中 AnyObject Class 的示例。
class OtherClass {
private var myValue: String?
func setValue(myValue: String) {
self.myValue = myValue
}
func getValue() -> String {
return myValue!
}
}
class MyClass {
init() {
let otherClass = OtherClass()
otherClass.setValue("Value here!")
let myValue = getValue(otherClass) as? String
print(myValue) // output is Value here!
}
func getValue(object: AnyObject) -> AnyObject {
let myObject = object as! OtherClass
return myObject.getValue()
}
}
我们可以将 OtherClass 对象添加到 getValue 方法的参数中。可以看到,参数method是AnyObject不是OtherClass。但是在 android 我不能那样做。那么,可以像在 iOS 中那样在 Android 中使用 AnyObject Class 吗?
您需要使用 Java 对象 class。否则,您可以创建自己的 class,由所有 OtherClass
扩展并将其用作输入类型参数。
你也可以看看 Java Generic Types(但它更高级,在这种情况下可能没有用)
The protocol to which all classes implicitly conform.
Class Object is the root of the class hierarchy. Every class has Object as a superclass. All objects, including arrays, implement the methods of this class.
我需要帮助,这是 Swift 中 AnyObject Class 的示例。
class OtherClass {
private var myValue: String?
func setValue(myValue: String) {
self.myValue = myValue
}
func getValue() -> String {
return myValue!
}
}
class MyClass {
init() {
let otherClass = OtherClass()
otherClass.setValue("Value here!")
let myValue = getValue(otherClass) as? String
print(myValue) // output is Value here!
}
func getValue(object: AnyObject) -> AnyObject {
let myObject = object as! OtherClass
return myObject.getValue()
}
}
我们可以将 OtherClass 对象添加到 getValue 方法的参数中。可以看到,参数method是AnyObject不是OtherClass。但是在 android 我不能那样做。那么,可以像在 iOS 中那样在 Android 中使用 AnyObject Class 吗?
您需要使用 Java 对象 class。否则,您可以创建自己的 class,由所有 OtherClass
扩展并将其用作输入类型参数。
你也可以看看 Java Generic Types(但它更高级,在这种情况下可能没有用)
The protocol to which all classes implicitly conform.
Class Object is the root of the class hierarchy. Every class has Object as a superclass. All objects, including arrays, implement the methods of this class.