Swift程序演示类中方法的重载
方法重载是一种技术,它允许我们在单个类中创建多个同名方法,但这些方法的参数类型或参数数量不同。在方法调用时,根据传递给它的参数类型或数量来确定调用哪个特定方法。例如 -
class Book {
// Methods
func Author(){}
func Author(x: Int)->Int{}
func Author(x: String)->String{}
func Author(a: Int, b: String)->Int{}
}
这里,Book 类有四个重载方法。其中方法名称相同,但参数类型和参数数量不同。在这篇文章中,我们将学习如何编写一个 Swift 程序来演示类中方法的重载。
方法 1:使用不同数量的参数进行重载
这里,一个类包含多个同名方法,但参数数量不同。
示例
以下 Swift 程序演示了在一个类中使用不同数量的参数进行方法重载。
import Foundation
import Glibc
class MathematicOperation {
// Method 1
func product(x: Int, y: Int) -> Int {
return x * y
}
// Method 2
func product(x: Int, y: Int, z: Int) -> Int {
return x * y * z
}
}
// Creating object
let obj = MathematicOperation ()
// Calling method 1
print("Product:", obj.product(x: 10, y: 40))
// Calling method 2
print("Product:", obj.product(x: 80, y: 20, z: 90))
输出
Product: 400 Product: 144000
在上面的代码中,我们创建了一个名为“MathematicOperation”的类。此类包含两个同名方法“product”,但参数数量不同。然后我们创建“MathematicOperation”类的实例并调用“product”方法。我们可以根据参数的数量确定调用哪个方法。如果我们传递两个参数,则调用第一个方法;如果我们传递三个参数,则调用第二个方法。
方法 2:使用不同类型的参数进行重载
这里,一个类包含多个同名方法,但参数类型不同。这里参数的数量可以相同,但类型必须不同。
示例
以下 Swift 程序演示了在一个类中使用不同类型的参数进行方法重载。
import Foundation
import Glibc
class Addition {
// Method 1
func sum(x: Int, y: Int) -> Int {
return x + y
}
// Method 2
func sum(x: Double, y: Double) -> Double {
return x + y
}
// Method 3
func sum(x: String, y: String)-> String{
return x + y
}
}
// Creating object
let obj = Addition()
// Calling method 1
print("Sum:", obj.sum(x: 10, y: 40))
// Calling method 3
print("Sum:", obj.sum(x: "Blue", y: "Sky"))
// Calling method 2
print("Sum:", obj.sum(x: 82.2, y: 21.2))
输出
Sum: 50 Sum: BlueSky Sum: 103.4
在上面的代码中,我们创建了一个名为“Addition”的类。此类包含三个同名方法“sum”,参数数量相同,但参数类型不同。然后我们创建“Addition”类的实例并调用“sum”方法。我们可以根据参数的类型确定调用哪个方法。如果我们传递两个整型参数,则调用第一个方法。如果我们传递两个字符串类型参数,则调用第三个方法。如果我们传递两个双精度类型参数,则调用第二个方法。
结论
因此,这就是我们在类中演示方法重载的方式。方法重载提供了更好的代码可读性、灵活性、简洁性和多态性。此外,请始终记住,重载方法可以具有相同的名称,相同或不同的返回类型,但它们的参数列表必须不同。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP