Swift 访问权限的资料整理

Swift 访问权限

1>internal :内部的,

1.默认情况下所有的类的属性&方法的访问权限都是internal 
     2.若本模块(项目/包/target)中可以访问

2> private:私有的

1.只有在本类中可以访问

3> open 公开的

1.可以跨模块(包/target)都是可以访问的

4> fileprivate  swift3.0

1.只要在本文件中都是可以进行访问的

示例代码:


import UIKit 

/*
 1>internal :内部的,
   1.默认情况下所有的类的属性&方法的访问权限都是internal
   2.若本模块(项目/包/target)中可以访问
 2> private:私有的
   1.只有在本类中可以访问
 3> open 公开的
   1.可以跨模块(包/target)都是可以访问的
 4> fileprivate swift3.0
   1.只要在本文件中都是可以进行访问的
 */ 

class FourthViewController: TFBaseViewController { 

  var name : String = ""
  private var age : Int = 0
  fileprivate var height : Double = 0 

  override func viewDidLoad() {
    super.viewDidLoad() 

    setUI() 

    //1>internal :内部的,访问name,
    name = "srfg"
    print(name) 

    //2> private:私有的,访问age
    age = 10
    print(age) 

    //3> open 公开的,创建UIView对象
    let view = UIView()
    view.alpha = 0.5
    view.tag = 100
    view.frame = CGRect(x:0, y: 0 ,width: 100, height:100)
  }
} 

class person {
  func test() {
    let vc = FourthViewController()
    vc.name = "fgh" 

//    2> private:私有的 //只有在本类中可以访问
//    vc.age = 

//    4> fileprivate swift3.0
//    1.只要在本文件中都是可以进行访问的
    vc.height = 1.00
  }
}

如有疑问请留言或到本站社区交流讨论,希望通过本文能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • 详解Swift中的下标访问用法

    Swift中的Array,Dictionary类型可以通过下标或者键值的方式来进行数据的访问,实际上在Swift的语法中,下标可以定义在类.结构体.枚举中.开发者可以通过下标的方式来对属性进行访问而不用使用专门的存取方法.并且定义的下标不限于一维,开发者可以定义多维的下标来满足需求. 下标的语法结构 下标使用subscript来定义,其有些类似于方法,参数和返回值本别作为下标入参和通过下标所取的值.但是在subscript实现部分,又十分类似于计算属性,其需要实现一个get块和可选实现一个set

  • Swift语言中的一些访问控制设置详解

    限制访问代码块,模块和抽象通过访问控制来完成.类,结构和枚举可以根据自己的属性,方法,初始化函数和下标来通过访问控制机制进行访问.常量,变量和函数的协议限制,并允许通过访问控制来访问全局和局部变量.应用于属性,类型及函数的访问控制可以被称为"实体". 访问控制模型是基于模块和源文件的. 模块定义为代码分配一个单独的单元,并且可以使用import 关键字导入.源文件被定义为一个单一的源代码文件,模块可访问多种类型和函数. 三种不同的访问级别是由 Swift 语言提供.它们分别是 Publ

  • 深入理解Swift中的访问控制关键字

    前言 在Swift3.0以前有三种访问控制关键字,分别是private.internal和public.而在swift3以后,又在原来的基础上增加了两种访问控制关键字:fileprivate和open.他们可以看作是private和public的进一步细分.下面是各个修饰符的区别以及访问权限排序. 各个修饰符的区别 private swift3.0 private访问级别所修饰的属性或者方法只能在当前类里访问. class A { private func test() { print("thi

  • Swift中的访问控制和protected

    原文再续,书折第一回. 很多其他编程语言都有一种"protected"设定,可以限制某些类方法只能被它的子类所使用. Swift支持了访问控制后,大家给我们的反馈都很不错.而有的开发者问我们:"为什么Swift没有类似protected的选项?" 当我们在设计Swift访问控制的不同等级时,我们认为有两种主要场景: ●在一个APP里:隐藏某个类的私密细节. ●在一个开源框架里:不让导入这个框架的APP,随便接触框架的内部实现细节. 上面的两种常见情况,对应着priv

  • Swift学习教程之访问控制详解

    前言 本文主要给大家介绍了关于Swift访问控制的相关内容,访问控制对访问你的其他代码源文件和模块部分进行了约束.这个特性允许你隐藏你的代码实现,并且指定通过其可以访问和使用该代码的优选接口. class,structure 和 enumeration 都可以指定访问级别,当然,property,method,initializer 和 属于这里类型的 subscript.protocol 可以限制到某个上下文,全局变量,变量和函数也可以. 另外,Swift 也提供默认的使用级别给典型的使用场景

  • Swift 访问权限的资料整理

    Swift 访问权限 1>internal :内部的, 1.默认情况下所有的类的属性&方法的访问权限都是internal       2.若本模块(项目/包/target)中可以访问 2> private:私有的 1.只有在本类中可以访问 3> open 公开的 1.可以跨模块(包/target)都是可以访问的 4> fileprivate  swift3.0 1.只要在本文件中都是可以进行访问的 示例代码: import UIKit /* 1>internal :内

  • Java中四种访问权限资料整理

     Java中四种访问权限总结 一.Java中有四种访问权限, 其中三种有访问权限修饰符,分别为private.public.protected,还有一种不带任何修饰符(default). 1. private: Java语言中对访问权限限制的最窄的修饰符,一般称之为"私有的".被其修饰的属性以及方法只能被该类的对象 访问,其子类不能访问,更不能允许跨包访问. 2. default:即不加任何访问修饰符,通常称为"默认访问权限"或者"包访问权限".

  • 浅析java修饰符访问权限(动力节点Java学院整理)

    Java有四种访问权限,其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符: 1. private: Java语言中对访问权限限制的最窄的修饰符,一般称之为"私有的".被其修饰的类.属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问. 2. default:即不加任何访问修饰符,通常称为"默认访问模式".该模式下,只允许在同一个包中进行访问. 3. protect: 介于public 和 pri

  • java四种访问权限实例分析

    引言 Java中的访问权限理解起来不难,但完全掌握却不容易,特别是4种访问权限并不是任何时候都可以使用.下面整理一下,在什么情况下,有哪些访问权限可以允许选择. 一.访问权限简介 访问权限控制: 指的是本类及本类内部的成员(成员变量.成员方法.内部类)对其他类的可见性,即这些内容是否允许其他类访问. Java 中一共有四种访问权限控制,其权限控制的大小情况是这样的:public > protected > default(包访问权限) > private ,具体的权限控制看下面表格,列所

  • Spring security 如何开放 Swagger 访问权限

    目录 Spring security 开放 Swagger 访问权限 开放这四个目录 spring boot 加入拦截器后swagger不能访问 原因分析 网上找的资料中大部分只说添加这个 或者只添加 Spring security 开放 Swagger 访问权限 开放这四个目录 搞定 .antMatchers("/swagger-ui.html").permitAll() .antMatchers("/webjars/**").permitAll() .antMa

  • Angularjs中的页面访问权限怎么设置

    在以往的项目中,前后端常见的配合方式是前端提供页面和ui加一点DuangDuangDuang的效果,后端搭建框架数据结构和数据交互(数据交互前后端有交集),不管是.net.java or php都能一对多的提供前端服务,然而在新形式下项目中运用了前端框架,开发情况就不一样了,比如我要说的这是在angular框架下完成的开发,模式是后端提供服务和api文档,页面和数据交互及逻辑处理由前端完成,前端俨然是个完全的programer了,这个过程中就会遇到之前意想不到的问题(如果没有做过后端开发),比如

  • windows 服务器安全之磁盘访问权限设置[完整篇]

    asp.net服务器安全之磁盘访问权限设置 硬盘或文件夹: C:\ D:\ E:\ F:\ 类推 主要权限部分: 其他权限部分: Administrators 完全控制 无如果安装了其他运行环境,比如PHP等,则根据PHP的环境功能要求来设置硬盘权限,一般是安装目录加上users读取运行权限就足够了,比如c:\php的话,就在根目录权限继承的情况下加上users读取运行权限,需要写入数据的比如tmp文件夹,则把user的写删权限加上,运行权限不要,然后把虚拟主机用户的读权限拒绝即可.如果是mys

  • Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种模式且使用相同的访问权限账号

    说明: 服务器操作系统:CentOS 6.x 服务器IP:192.168.21.134 实现目的: 1.在服务器上安装配置SVN服务: 2.配置SVN服务同时支持Apache的http和svnserve独立服务器两种模式访问: 3.Apache的http和svnserve独立服务器两种模式使用相同的访问权限账号. 具体操作: 一.关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉

  • 批处理设置文件访问权限的方法分享

    SetACL.exe 0.904 中文帮助: SetACL.exe我们下载地址示例: SetACL.exe c:\nihao /dir /deny everyone /read_ex 设置E:\wxDesktop 文件夹 everyone 用户为读取和运行权限 SetACL MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /registry /deny administrator /read 设置注册表键值Run 为完全控制权限 ---

  • Android使用记录访问权限详解

    使用记录访问权限 什么是使用记录访问权限呢?这是在Android5.0(Api level 21)新添加的,通过该权限我们可以查看设备上其它应用使用情况的统计信息等. 如何使用该权限呢? 首先在manifest中添加: <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" tools:ignore="ProtectedPermissions" /> 由于该权限默认只授

随机推荐