访问限定符:用来定义类、属性、构造方法。
public:范围最大,在同一个工程中都可以用到,一般方法会定义成public
protected 受保护的 在同一个包中的类+子类
默认的(什么都不写(接口除外,接口默认public)) 在同一个包中可以使用
private(私有的) 同一个类中可以使用
子类在继承父类的时候,可以扩大可见范围,而不能减小。
this:一定指一个对象(当前调用方法的对象,谁调用指向谁)
1) 代表一个对象 (同一个类,或者调用) this.name
2)当前空间里的某一个构造方法,通过参数类型和个数去匹配this(0,0,0,"默认")
super :
1)表示当前类的父类对象
public class c extends a{
public c{
super();}
public void change(){
super.test();}
public void test(){
}
}
final:用来定义类,属性,方法,变量
修饰类:(不能被继承)public final class a{}
修饰属性,变量不能被修改,必须初始化,或者说只能赋一次值private final int age=100;
修饰方法,可以被继承,不能被修改public final void trst(){}
修饰变量,final int age=100
static:可以定义属性,方法,代码块
属性:private static String name 这一个类所有的对象共同使用的一个变量指向同一个地址
color (定义成静态的就不能改变颜色了)
静态的变量不会被拷贝到别的
方法:静态的方法调用的时候和对象无关,只和类有关,静态方法也不会拷贝(即不会有覆盖和 多态)(拷贝只能拷贝非静态的属性和方法)
public static void test(){}表示这个
静态块的执行在主函数之前,来初始化数据
加载顺序: 静态属性,静态块 主函数 方法只有调用才能执行
构造方法是不能被继承的,所以不能重写
方法可以继承,可以重写[/size]
public:范围最大,在同一个工程中都可以用到,一般方法会定义成public
protected 受保护的 在同一个包中的类+子类
默认的(什么都不写(接口除外,接口默认public)) 在同一个包中可以使用
private(私有的) 同一个类中可以使用
子类在继承父类的时候,可以扩大可见范围,而不能减小。
this:一定指一个对象(当前调用方法的对象,谁调用指向谁)
1) 代表一个对象 (同一个类,或者调用) this.name
2)当前空间里的某一个构造方法,通过参数类型和个数去匹配this(0,0,0,"默认")
super :
1)表示当前类的父类对象
public class c extends a{
public c{
super();}
public void change(){
super.test();}
public void test(){
}
}
final:用来定义类,属性,方法,变量
修饰类:(不能被继承)public final class a{}
修饰属性,变量不能被修改,必须初始化,或者说只能赋一次值private final int age=100;
修饰方法,可以被继承,不能被修改public final void trst(){}
修饰变量,final int age=100
static:可以定义属性,方法,代码块
属性:private static String name 这一个类所有的对象共同使用的一个变量指向同一个地址
color (定义成静态的就不能改变颜色了)
静态的变量不会被拷贝到别的
方法:静态的方法调用的时候和对象无关,只和类有关,静态方法也不会拷贝(即不会有覆盖和 多态)(拷贝只能拷贝非静态的属性和方法)
public static void test(){}表示这个
静态块的执行在主函数之前,来初始化数据
加载顺序: 静态属性,静态块 主函数 方法只有调用才能执行
构造方法是不能被继承的,所以不能重写
方法可以继承,可以重写[/size]