swift:声明公共变量

时间:2015-01-28 12:02:53

标签: ios xcode variables swift public

class XYActivity: UIActivity,YouTubeHelperDelegate
{
    var youTubeHelper:YouTubeHelper
    var uploadURL: String!
    override init() {
        self.youTubeHelper = YouTubeHelper()
    }
    override  func activityType() -> String? {
        return nil
    }
//
}

我想将uploadURL公开,即在其他类中分配。 当我添加公共前方var uploadURL:String!时,它建议我将其作为内部。我想把它公之于众。请帮忙

3 个答案:

答案 0 :(得分:17)

为了公开,必须将该类声明为public。

默认情况下,修饰符是internal,这使得类,方法和属性在当前模块中的任何位置都没有显式声明为private。

如果您的项目仅包含应用程序,那么您可能不需要公开 - 内部具有相同的效果。如果您正在开发一个框架,并且需要从其他模块中的代码访问该属性,那么您需要将整个类和公开的方法/属性声明为public。

建议阅读:Access Control

摘录描述默认访问级别

  

如果您没有自己指定显式访问级别,则代码中的所有实体(具有一些特定的例外情况,如本章后面所述)都具有内部的默认访问级别。因此,在许多情况下,您无需在代码中指定显式访问级别。

单目标应用的

访问级别

  

当您编写一个简单的单目标应用程序时,应用程序中的代码通常是自包含在应用程序中的,并且不需要在应用程序模块外部提供。内部的默认访问级别已匹配此要求。因此,您无需指定自定义访问级别。但是,您可能希望将代码的某些部分标记为私有,以便从应用程序模块中的其他代码中隐藏其实现细节。

答案 1 :(得分:3)

如果包含它的类也是公共类,则可以将其公开,因此请根据它进行更改。

答案 2 :(得分:1)

JuST添加关键字" public"一开始,这将在应用程序中公开。