精华内容
下载资源
问答
  • 其中整数表达式可以是基本类型int或其对应包装类Integer,当然也包括不同长度类型,例如short。由于byte、short和char类型值都能被隐式转换为int类型,因此这些类型以及他们对应包装类型都可以...

    【本文参考自《Java程序员面试笔试宝典》】

    【switch】switch与case关键字作为分支语句常常一起出现。在使用switch(expr)时,expr只能是一个枚举常量(内部也是由整型或字符类型实现)或一个整数表达式。其中整数表达式可以是基本类型int或其对应的包装类Integer,当然也包括不同的长度类型,例如short。由于byte、short和char类型的值都能被隐式的转换为int类型,因此这些类型以及他们对应的包装类型都可以作为switch的表达式。但是,long、float、double、String类型不能够隐式地转换为int类型,因此它们不能被用作switch的表达式。在Java7中,switch开始支持String类型,但是String类型变量不能为null。

    【case】case语句之后可以是直接的常量数值,也可以是一个常量计算式,还可以是final型的变量(final变量必须是编译时的常量),但不能是变量或带有变量的表达式,当然更不能是浮点型数。同样在Java7,case语句开始支持String类型,但是字符串不能为null。

    【volatile】volatile关键字是一个类型修饰符,它是被设计用来修饰被不同线程访问和修改的变量。被volatile类型定义的变量,系统每次用到它时都是直接从对应的内存当中提取,而不会利用缓存。在使用了volatile修饰成员变量后,所有县城在任何时候所看到的变量的值都是相同的。需要注意的是,由于volatile不能保证操作的原子性,因此一般情况下volatile不能代替synchronized。此外,使用volatile会阻止编译器对代码的优化,因此会降低程序的执行效率。所以,除非迫不得已,否则,能不使用volatile就尽量不要使用volatile。

    【synchronized】synchronized关键字保证了任何时候都只有一个线程访问一个方法或对象。

    【transient】如果使用transient关键字声明一个实例对象,当对象存储时,它的值不需要维持。即,在对象进行序列化的时候,不被序列化。

    展开全文
  • 本文说说static在iOS中的作用包括OC和Swift,并讲解常用的情况.代码主要以OC为主,Swift中主要描述和另外一个关键字class的异同 当static修饰局部变量时 变量在内存中的位置: 当用static修饰局部变量时,局部变量的...

    本文说说static在iOS中的作用包括OC和Swift,并讲解常用的情况.代码主要以OC为主,Swift中主要描述和另外一个关键字class的异同

    当static修饰局部变量时

    1. 变量在内存中的位置: 当用static修饰局部变量时,局部变量的内存地址会从栈变为全局区(静态区)
    2. 作用域:只在函数内部可见,只初始化一次,所以也只有一个内存地址
    3. 生命周期程序结束时才释放
    - (void)viewDidLoad {
        [super viewDidLoad];
        [self tobeYoung];
        [self tobeYoung];
        [self tobeYoung];
        static int age = 20;//使用static修饰的局部变量,在其他的函数中声明相同变量名的变量时,是一个全新的变量
        NSLog(@"age===%d",age);
        // Do any additional setup after loading the view, typically from a nib.
    }
    
    - (void)tobeYoung {
        static int age = 10;
        age--;
        NSLog(@"age===%d",age);
    }
    // 控制台的输出结果
    2018-11-29 22:46:31.602384+0800 static[1260:222387] age===9
    2018-11-29 22:46:31.602557+0800 static[1260:222387] age===8
    2018-11-29 22:46:31.602672+0800 static[1260:222387] age===7
    2018-11-29 22:46:31.602758+0800 static[1260:222387] age===20
    //每次的输出结果都不一样,被static修饰的局部变量内存地址只有一份,只被初始化一次,所有第二次调用tobeYoung方法时age没有被重新初始化,所以是9,9--之后就是输出8了
    复制代码
    1. 常用情况讲解:我们经常在tableViewcell复用的时候使用到static,为什么需要在局部变量identifier之前加上static.我们先看看常用的写法
    - (nonnull UITableViewCell *)tableView:(nonnull UITableView *)tableView cellForRowAtIndexPath:(nonnull NSIndexPath *)indexPath {
        static NSString * identifier = @"cellIdentifier";
        UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];
        if (!cell) {
            cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
        }
        return cell;
    }
    复制代码

    tableview的这个代理方法是一个会被反复调用的方法,当identifier的前面不加static修饰时,identifier这个临时变量是储存在栈中的,指向常量区中的@"cellIdentifier",一旦这个代理方法执行完毕,identifier这个局部变量就会被回收.当再次调用的时候又会重新生成一个局部变量重新指向常量区的@"cellIdentifier".,消耗内存.

    当使用static修饰identifier时,identifier的内存就会被分配在全局区(静态区),生命周期会变成这个程序的运行时间,不会随着代理方法调用完毕而销毁,一直指向常量区的@"cellIdentifier".当再次调用时不需要重新生成.节省内存

    当static修饰全局变量时

    1. 内存中的位置 :仍然是在静态储存区没变,生命周期为整个程序运行期间.
    2. 作用域 :在整个声明它的文件中可用,在声明他之外的文件之外不可见
    3. 常用情况:iOS中的单例中的全局变量会用static修饰
    #import "Singleton.h"
    
    @implementation Singleton
    static Singleton * instance = nil;
    + (Singleton *)getInstance{
        if (instance == nil) {
            instance = [[Singleton alloc] init];
        }
        return instance;
    }
    
    + (id) allocWithZone:(struct _NSZone *)zone{
        if (instance == nil) {
            instance = [super allocWithZone:zone];
            
        }
        return instance;
    }
    - (id) copyWithZone :(struct _NSZone*)zone{
        
        return instance;
    }
    @end
    
    复制代码

    为什么一定要用static 来修饰变为一个静态变量,而不是写成一个实例变量.因为单例是程序生命周期中唯一的实例,为确保实例化的唯一.而利用类的类方法来生成,而在类方法中不可以使用实例对象的变量,只能使用属于类的(static)类变量(一般在OC中没有特意区分static变量和类变量的区别).而且在声明它之外的文件不可见.

        /**
         在其他的类中实用extern来访问
         */
        extern Singleton * instance ;
        NSLog(@"instance====%@",instance);
        
        直接无法编译过会直接报错
        Undefined symbols for architecture x86_64:
      "_instance", referenced from:
          -[ViewController viewDidLoad] in ViewController.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    
    复制代码

    在Swift中static的使用(包含与关键字class的异同)

    说道Swift中的static那就不得不说到另一个关键字class,在Swift中static和class都是用来描述类型作用域这一概念.两者都可以用来修饰计算类型.都可以用来修饰方法,static修饰的方法叫做静态方法,class修饰的是类方法.(在OC中我们不会特别的区分类方法,类变量,静态方法,静态变量),但是在Swift中class和static,无论是能够修饰的范围还是修饰后产生的效果区别都很大,不能混为一谈.

    • class 和 static相同点
    1. 都可以在class中修饰方法,static修饰的叫做静态方法,class修饰的叫做类方法.
    2. 都可以修饰class中的计算属性
    class Programmer :NSObject {
        
        static var name : String{
            return "老王"
        }
        class var nickname :String {
            return "王重阳"
        }
        class func writeTheCode() -> Void {
            print("写代码")
        }
        static func fixTheBug() -> Void {
            print("修复bug")
        }
        
    }
    复制代码
    • class 和static中的不同点
    1. 首先class修饰的属性和方法可以被子类重写,但是static不能被重写
      class修饰的类方法被重写时,可以使用static修饰,让方法变成静态方法,但它的子类就不能重写了 class修饰的计算属性被重写时,可以使用static修饰,让其变成静态变量,但它的子类就不能重写了
    class iOSProgrammer :Programmer{
        // 重写计算属性 可以使用static 来重写,但是static 重写后,就不能被它的子类再次重写了
        static override var nickname: String{
            return "iOS王重阳"
        }
        // 重写类方法时可以使用static 让其变成静态方法
        static override func writeTheCode() -> Void {
            print("写代码")
        }
        
    }
    复制代码
    1. 其次class 和static能够修饰的范围不一样,class只能在class中修饰,而static可以不仅可以作用于class中,也可以在enum,和struct中使用.
      通篇有限今天暂时到此为此,如有错误,希望大家帮忙在评论中指出,欢迎大家来交流沟通.

    转载于:https://juejin.im/post/5ab3553251882555791890be

    展开全文
  • PHP中几个常用的关键字

    千次阅读 2012-02-14 10:04:14
    self:用来访问当前类中内容的关键字,类似于$this关键字,但$this需要类实例化后才能使用,$this不能够访问类中的静态成员,self可以直接访问当前类中的内部成员,包括静态成员。$this关键字类实例化后可以使用,也...

    final:在PHP中final关键字充当锁的作用,当定义类的时候该类不能被继承,当用来定义方法的时候该方法不能被重载

    self:用来访问当前类中内容的关键字,类似于$this关键字,但$this需要类实例化后才能使用,$this不能够访问类中的静态成员,self可以直接访问当前类中的内部成员,包括静态成员。$this关键字类实例化后可以使用,也可以在类的内容访问非静态化成员

    static:单独占据内存,只初始化一次,访问静态成员要用::,类中的静态成员和方法可以直接访问,不需要实例化

    const:用来定义类中的常量,类似PHP外部定义的常量的关键字define();CONSET只能修饰类当中的成员属性!常量建议都大写,不使用$

    关键字是不需要加$的。在类中访问常量也是用self关键字

    举例:

    <?php
    /*
    * Created on 2012-2-12
    *
    * To change the template for this generated file go to
    * Window - Preferences - PHPeclipse - PHP - Code Templates
    */
    abstract class cl1
    {
      static $ss='我的电脑';//静态成员变量
      public $aa='你的电脑';
      abstract function fun1();
      abstract function fun2();
      abstract function fun3();
      function ok()
      {
      echo self::$ss;//在类的内部访问static成员也要用的self关键字
      echo $this->aa;
      }
    }
    class cl2 extends cl1
    {
    function fun1()
    {

    }
    function fun2()
    {

    }
    function fun3()
    {
      return 1;
    }
    }
    $instance=new cl2();
    echo $instance->fun3().$instance->ok();
    echo cl1::$ss;//无需实例化也可以访问到变量ss
    ?>

    展开全文
  • 主要介绍了Delphi常用关键字用法,包括了各个常用的关键字及其详细用法,需要的朋友可以参考下
  • 本文说说static在iOS中的作用包括OC和Swift,并讲解常用的情况.代码主要以OC为主,Swift中主要描述和另外一个关键字class的异同当static修饰局部变量时变量在内存中的位置: 当用static修饰局部变量时,局部变量的内存...

    本文说说static在iOS中的作用包括OC和Swift,并讲解常用的情况.代码主要以OC为主,Swift中主要描述和另外一个关键字class的异同

    当static修饰局部变量时

    变量在内存中的位置: 当用static修饰局部变量时,局部变量的内存地址会从栈变为全局区(静态区)

    作用域:只在函数内部可见,只初始化一次,所以也只有一个内存地址

    生命周期程序结束时才释放

    - (void)viewDidLoad {

    [super viewDidLoad];

    [self tobeYoung];

    [self tobeYoung];

    [self tobeYoung];

    static int age = 20;//使用static修饰的局部变量,在其他的函数中声明相同变量名的变量时,是一个全新的变量

    NSLog(@"age===%d",age);

    // Do any additional setup after loading the view, typically from a nib.

    }

    - (void)tobeYoung {

    static int age = 10;

    age--;

    NSLog(@"age===%d",age);

    }

    // 控制台的输出结果

    2018-11-29 22:46:31.602384+0800 static[1260:222387] age===9

    2018-11-29 22:46:31.602557+0800 static[1260:222387] age===8

    2018-11-29 22:46:31.602672+0800 static[1260:222387] age===7

    2018-11-29 22:46:31.602758+0800 static[1260:222387] age===20

    //每次的输出结果都不一样,被static修饰的局部变量内存地址只有一份,只被初始化一次,所有第二次调用tobeYoung方法时age没有被重新初始化,所以是9,9--之后就是输出8了

    复制代码常用情况讲解:我们经常在tableViewcell复用的时候使用到static,为什么需要在局部变量identifier之前加上static.我们先看看常用的写法

    - (nonnull UITableViewCell *)tableView:(nonnull UITableView *)tableView cellForRowAtIndexPath:(nonnull NSIndexPath *)indexPath {

    static NSString * identifier = @"cellIdentifier";

    UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];

    if (!cell) {

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];

    }

    return cell;

    }

    复制代码

    tableview的这个代理方法是一个会被反复调用的方法,当identifier的前面不加static修饰时,identifier这个临时变量是储存在栈中的,指向常量区中的@"cellIdentifier",一旦这个代理方法执行完毕,identifier这个局部变量就会被回收.当再次调用的时候又会重新生成一个局部变量重新指向常量区的@"cellIdentifier".,消耗内存.

    当使用static修饰identifier时,identifier的内存就会被分配在全局区(静态区),生命周期会变成这个程序的运行时间,不会随着代理方法调用完毕而销毁,一直指向常量区的@"cellIdentifier".当再次调用时不需要重新生成.节省内存

    当static修饰全局变量时

    内存中的位置 :仍然是在静态储存区没变,生命周期为整个程序运行期间.

    作用域 :在整个声明它的文件中可用,在声明他之外的文件之外不可见

    常用情况:iOS中的单例中的全局变量会用static修饰

    #import "Singleton.h"

    @implementation Singleton

    static Singleton * instance = nil;

    + (Singleton *)getInstance{

    if (instance == nil) {

    instance = [[Singleton alloc] init];

    }

    return instance;

    }

    + (id) allocWithZone:(struct _NSZone *)zone{

    if (instance == nil) {

    instance = [super allocWithZone:zone];

    }

    return instance;

    }

    - (id) copyWithZone :(struct _NSZone*)zone{

    return instance;

    }

    @end

    复制代码

    为什么一定要用static 来修饰变为一个静态变量,而不是写成一个实例变量.因为单例是程序生命周期中唯一的实例,为确保实例化的唯一.而利用类的类方法来生成,而在类方法中不可以使用实例对象的变量,只能使用属于类的(static)类变量(一般在OC中没有特意区分static变量和类变量的区别).而且在声明它之外的文件不可见.

    /**

    在其他的类中实用extern来访问

    */

    extern Singleton * instance ;

    NSLog(@"instance====%@",instance);

    直接无法编译过会直接报错

    Undefined symbols for architecture x86_64:

    "_instance", referenced from:

    -[ViewController viewDidLoad] in ViewController.o

    ld: symbol(s) not found for architecture x86_64

    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    复制代码

    在Swift中static的使用(包含与关键字class的异同)

    说道Swift中的static那就不得不说到另一个关键字class,在Swift中static和class都是用来描述类型作用域这一概念.两者都可以用来修饰计算类型.都可以用来修饰方法,static修饰的方法叫做静态方法,class修饰的是类方法.(在OC中我们不会特别的区分类方法,类变量,静态方法,静态变量),但是在Swift中class和static,无论是能够修饰的范围还是修饰后产生的效果区别都很大,不能混为一谈.

    class 和 static相同点

    都可以在class中修饰方法,static修饰的叫做静态方法,class修饰的叫做类方法.

    都可以修饰class中的计算属性

    class Programmer :NSObject {

    static var name : String{

    return "老王"

    }

    class var nickname :String {

    return "王重阳"

    }

    class func writeTheCode() -> Void {

    print("写代码")

    }

    static func fixTheBug() -> Void {

    print("修复bug")

    }

    }

    复制代码class 和static中的不同点

    首先class修饰的属性和方法可以被子类重写,但是static不能被重写

    class修饰的类方法被重写时,可以使用static修饰,让方法变成静态方法,但它的子类就不能重写了

    class修饰的计算属性被重写时,可以使用static修饰,让其变成静态变量,但它的子类就不能重写了

    class iOSProgrammer :Programmer{

    // 重写计算属性 可以使用static 来重写,但是static 重写后,就不能被它的子类再次重写了

    static override var nickname: String{

    return "iOS王重阳"

    }

    // 重写类方法时可以使用static 让其变成静态方法

    static override func writeTheCode() -> Void {

    print("写代码")

    }

    }

    复制代码其次class 和static能够修饰的范围不一样,class只能在class中修饰,而static可以不仅可以作用于class中,也可以在enum,和struct中使用.

    通篇有限今天暂时到此为此,如有错误,希望大家帮忙在评论中指出,欢迎大家来交流沟通.

    展开全文
  • 全文主要介绍C++中的常用关键字的含义、用法等等,目前介绍内容包括delete、default、new,随着应用增加会逐步补充。 delete C++代码中,一般是类中默认成员函数,函数声明后面加了=delete; 表示强制取消系统...
  • 参考链接:https://blog.csdn.net/yixianfeng41/article/details/54668327/ 本文将对一些常见c++关键字做一个总结,共包括如下关键字: const、extern、operator、size
  • SQL基础-常用关键字

    2019-12-20 19:07:58
    DDL(Data Definition Languages)数据定义语言,常用关键字包括create、drop、alter等 0.连接数据库 $mysql -u root -p connection id 表示是连接次数 1.创建数据库 CREATE DATABASE dnname 2.默认数据库 ...
  • limit 以及 offest 关键字常用技巧 # 仅使用limit关键字 此时 limit i,j后面两个参数各自表示意义是 从第i+1条记录开始 取 j 条 # 如果此时limit 后只跟了1个参数 j,表示从第1条数据开始(包括第i条记录),取 j ...
  • kotlin中与java用法一致的关键字包括:override ,while 等声明· open 在kotlin一个类需要被另一个类继承的话,需要用到open关键字open class OpenClass {}· is 判断类型 fun testIs() { var a: Any? = null; a = ...
  • group by---按照某几列分组 having---分组之后过滤 like(%, _)---模糊查询, %表示 select * from emp e where e.empname like '%ccc%' distinct---去除重复 select...between...and(闭合区间, 即包括前面数, ...
  • 我们经常调试和破解软件时用到的关键字和搜索的特征字串串包括: 已注册,未注册,注册版,破解版,crack,unregister,license,trial,已授权,未授权,user,过期,Expired……有很多的     这些是...
  • 包括在 .h .m 文件除非 @implementation 作用域内声明, 都属于全局常量, 都可能由外部进行访问。 外部文件访问时需要 使用关键字 extern 并且指明常量声明类型来使用, 否则编译器默认以 int 类型来处理。应该是...
  • 从input获取输入一个待查询关键字key,前端不区分,传到后台再进行处理,基本逻辑如下: //根据订单号(int)或者供应商名称(string)查询订单 if (!string.IsNullOrEmpty(key)) { var Id = MathTools.ToInt(key); ...
  • 接下来我们就看一下几个常用关键字的用法,包括const,cregister,far,__interrupt等。
  • ②类 String 中包括用于检查各个字符串方法,比如用于比较字符串,搜索字符串,提取子字符串。 2. 特点: ①. 字符串不变:字符串值在创建后不能被更改。 String s1 = "abc"; s1 += "d"; Sys...
  • explain关键字

    2018-11-04 23:07:32
    表示SELECT语句的类型该参数有几个常用的取值 SIMPLE 表示简单查询,其中不包括连接查询和子查询 PRIMARY 表示主查询,或者是最外层的查询语句 UNION 表示连接查询的第二个或后面的查询语...
  • Leo - 关键字

    2016-03-22 19:24:00
    我本来打算移除 Leo 里所有的关键字, 这种想法可能过于大胆, 而且会影响代码的可阅读性. ...但出于编程习惯的考虑, 最后还是决定加上一些常用的关键字. if ? unless?: case ?> when ...
  • 1、if后要执行多关键字方法用 Run Keywords AND ,或者封装一...3、run keyword if ELSE 注意这个ELSE 不能用小写,robotframwork 的关键字不区分大小写,但是这个ELSE例外 4、常用的比较符合见下图,供参考 ...
  • volatile 关键字

    2020-08-03 08:52:54
    在 Java 5.0 提供了 java.util.concurrent (简称 JUC )包,在此包中增加了在并发编程中很常用 实用工具类,用于定义类似于线程自定义子 系统,包括线程池、异步 IO 和轻量级任务框架。 提供可调、灵活...
  • 请关注本头条号,每天坚持更新原创干货技术文章。...本文列举出常用的使用命令和案例,希望能给读者一些帮助。2. Linux根据关键字查找文件内容的实用案例Linux根据关键字查找文件内容的实用案例在l...
  • suricata HTTP关键字

    2018-04-11 15:37:00
    http request请求包括请求行、请求头、空行和内容。一个普通的request请求如下: ... http response应答包括应答行,头部,空行和...之前的常用关键字中介绍了content以及许多修饰它的关键字,除此之外,http协议...
  • java关键字总结

    2011-09-25 17:09:05
    首先我们得明确,java中有53个关键字,...而另外的51个已经被定义的关键字则各有各的用法,鉴于各种用法普及度不同,今天在这里只介绍几种常用的关键字。     首先是访问修饰符的关键字:public 公有的  ...
  • C语言关键字浅析-void

    2018-11-28 09:42:24
    ### C语言关键字浅析系列 ### ### ISO/ANSI C 关键字 ### void在英文中的意思是“无效的;...不过确实void将是你后面的编程之路中非常常用的一个关键字包括在C++、java和C#等其他高级编程语...
  • Mysql之常用sql总结

    2019-09-12 11:01:14
    下面是我总结的Mysql中常用的一些SQL,一般分为下面三种: DDL:Data Definition Language,数据定义语言,这些语句操作的是数据库对象,比如:...常用的关键字包括:create、drop、alter等。 DML:Data Manipul...
  • 常用的关键字及含义 1、标识符 a.什么是标识符呢 凡是程序员自己有权利命名的单词都是标识符。 标识符可以标识什么? 类名、方法名、变量名、接口名、常量名… b.标识符的命名规则 什么是命名规则? 命名规则属于...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,076
精华内容 430
关键字:

常用的关键字包括