__block修饰变量以及代码块的用法】的更多相关文章

//如果没有"__block"修饰变量,则在代码块中无法修改变量的值 __block ; //定义代码块: //返回值类型 (^代码块名称)(参数类型) = ^(参数类型 参数名称) //{ // 实现功能并返回值 //} int (^myBlock)(int) = ^(int y) { x = x + ; return x * y; }; printf()); //打印结果为6…
synchronized(修饰方法和代码块) 1. 含义 synchronized 是同步锁,用来实现互斥同步. 在 Java 中,关键字 synchronized 可以保证在同一个时刻,只有一个线程可以执行某个方法或者某个代码块(主要是对方法或者代码块中存在共享数据的操作). synchronized 还可以保证一个线程的变化(主要是共享数据的变化)被其他线程所看到(保证可见性,完全可以替代 volatile 功能,但是 volatile 更轻量,还是要分场景使用). 2. 用法 synchr…
首先根据下面的这个一段代码:引入关于java初始化顺序的问题public class InitationTest extends Person { public InitationTest() { System.out.println("InitationTest constructor"); } static int j = 10; static { System.out.println("j="+j); System.out.println("Init…
1.final-最终 (1)final的特点 final修饰类不可以被继承,但是可以继承其他类 final修饰的方法不可以被覆盖,但父类中没有final修饰方法,子类覆盖后可以加final final修饰的变量称为常量,这些变量只能赋值一次 引用类型的变量值为对象地址值,地址值不能更改,但是地址内的对象属性可以修改 修改成员变量,需要对创建对象前赋值,否则报错. 2.static-静态,不创建对象就可以调用方法 (1)static特点 被static修饰的成员变量属于类,不属于这个类的对象 被s…
面向对象 今日内容介绍 u final u static u 匿名对象 u 内部类 u 包的声明与访问 u 四种访问修饰符 u 代码块 第1章 final关键字 1.1 final的概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对其中的方法进行重写,那怎么解决呢? 要解决上述的这些问题,需要使用到一个关键字final,final的意思为最终,不可变.fina…
Java 数据类型 基本数据类型 数值:int.short.long 字符:char 布尔:boolean 引用数据类型 class(类) interface(接口) 数组[] 所占字节数(1 byte= 8 bits) int:4字节 char: 规定2字节.若使用UTF-8编码,数字和英文等占1个字节,中文3个字节:若用GBK编码,中文是2个字节 float:4字节 short:2字节 long:8字节 double:8字节 注意:Java中整数默认的是Int,小数默认double floa…
匿名对象是在建对象时只有创建对象的语句方法而没有把对象的地址赋值给变量,匿名对象只能调用一次方法,想再调用时需要再创建一个新的匿名对象 创建普通对象:Person p =new Person(); 创建匿名对象:new Person().方法名(); new Person().setName("王无"); 内部类:写在其他类的内部或者成员位置或局部位置,这是其他类叫外部类.在内部类中可以访问外部类的属性. 当内部类写在成员位置时,叫成员内部类,写在局部位置时,叫局部内部类. 成员内部类…
/*构造方法是一种特殊的方法,专门用于构造/实例化对象,形式:[修饰符] 类名(){ }构造方法根据是否有参数分为无参构造和有参构造*/public class Dog {                 //创建Dog类 String name; int health; int love; String sex; /* 无参方法(一般没有构造方法,系统默认无参方法, 同时可以直接在上面属性声明后面赋值,如果没有赋值,系统自动输入默认值) 但是加有参方法时,建议一定要把无参加上 修饰符+类名()…
内部类 14.1内部类概念 将类写在其他类的内部,可以写在其他类的成员位置和局部位置,这时写在其他类内部的类就称为内部类.其他类也称为外部类. 内部类分为成员内部类与局部内部类. 我们定义内部类时,就是一个正常定义类的过程,同样包含各种修饰符.继承与实现关系等.在内部类中可以直接访问外部类的所有成员. 14.2成员内部类 成员内部类,定义在外部类中的成员位置.与类中的成员变量相似,可通过外部类对象进行访问 格式: class 外部类 { 修饰符 class 内部类 { //其他代码 } } 外部…
* static:是一个关键字,用于修饰成员变量和成员方法 * static的特点: * 被所有的对象所共享 * 可以使用类名调用 * 静态的加载优先于对象 * 随着类的加载而加载 * static的注意事项: * 静态方法: * 可以调用静态的成员变量 * 可以调用静态的成员方法 * 不可以调用非静态成员变量 * 不可以调用非静态成员方法 * 静态方法只能调用静态的成员 * 非静态方法: * 可以调用静态的成员变量 * 可以调用静态的成员方法 * 可以调用非静态的成员变量 * 可以调用非静态的…