一、修饰符
类修饰符:
public (访问控制符) ,将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。
注意:一个类里面,可以有多个class,但是只能有一个public类
protected (保护访问控制符) 同一个包中的其他任何类以及任何子类 (无论子类是在哪个包中声明的) 中引用这些类。
private (私有访问控制符) 只能在声明 private (内部) 类。
abstract,将一个类声明为抽象类,没有实现的抽象方法,需要子类提供方法实现。
注意:类似solidity的interface也是抽象,不能实现具体方法。
final,将一个类生命为最终 (即非继承类) ,表示他不能被其他类继承。
static,声明静态内部类,可以提供给外部类访问。
注意:调用时无需创建实例,直接使用。
package javastudy;
class StaticCode1{
static{
System.out.println(“x”);
}
public static void show(){ //静态方法
System.out.println(“gogogo”);
}
}
public class StaticDemo3 {
public static void main(String[] args) {
StaticCode1.show(); //用类名调用静态方法,即可加载。因为static静态方法可以直接用类名调用
}
}
成员变量修饰符:
public (公共访问控制符) ,指定该变量为公共的,他可以被任何对象的方法访问。
protected (保护访问控制符) 同一个包中的其他任何类以及任何子类 (无论子类是在哪个包中声明的) 访问。
在子类中可以覆盖此变量。
private (私有访问控制符) 指定该变量只允许自己的类的方法访问,其他任何类 (包括子类) 中的方法均不能访问。
final,最终修饰符,指定此变量的值不能变。
static (静态修饰符) 指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。
transient (过度修饰符) 指定该变量是系统保留,暂无特别作用的临时性变量。
volatile (易失修饰符) 指定该变量可以同时被几个线程控制和修改。
方法修饰符:
public (公共控制符)
private (私有控制符) 指定此方法只能有自己类等方法访问,其他的类不能访问 (包括子类)
protected (保护访问控制符) 同一个包中的其他任何类以及任何子类 (无论子类是在哪个包中声明的) 进行访问。
final,指定该方法不能被重写 (Override,子类继承父类)。
static,指定不需要实例化就可以激活的一个方法。
synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止多个线程的同时访问,
运行结束后解锁。
二、String、StringBuffer、StringBuilder的字符说明