文章目录
- 1. 权限修饰符
- 2. final(最终态)
- 3. static(静态)
1. 权限修饰符
修饰符 | 同一个类中 | 同一个包中的子类和无关类 | 不同包的子类 | 不同包的无关类 |
---|---|---|---|---|
private | √ | |||
默认 | √ | √ | ||
protected | √ | √ | √ | |
public | √ | √ | √ | √ |
2. final(最终态)
1. final
关键字是最终的意思,可以修饰成员方法、成员变量和类。
2. final
修饰的特点:(1) 修饰方法:表明该方法是最终方法,不能在继承时被重写。 (2) 修饰变量:表明该变量是常量,不能再次被赋值。 (3) 修饰类:表明该类是最终类,不能被继承。
3. final
修饰局部变量:(1) 变量是基本类型,则数据值不能发生改变。 (2) 变量是引用类型,则地址值不能发生改变,但地址值里的内容可以改变。
public class Demo {
public static void main(String[] args) {
final int age=20;
//age=100; 报错
System.out.println(age);
}
}
3. static(静态)
1. static
关键字是静态的意思,可以修饰成员方法、成员变量。
2. static
修饰的特点:(1) 被类所有对象共享。 (2) 可以通过类名调用,当然也可以通过对象名调用。
public class Student {
public String name;
public int age;
public static String university;
public void show(){
System.out.println(name+" "+age+"岁"+" "+university);
}
}
public class Demo {
public static void main(String[] args) {
Student.university="CUMT";
Student s1=new Student();
s1.name="张三";
s1.age=20;
s1.show();
Student s2=new Student();
s2.name="李四";
s2.age=30;
s2.show();
}
}
3. static
访问特点:(1) 非静态成员方法能访问:静态的成员变量、非静态的成员变量、静态的成员方法、非静态的成员方法。 (2) 静态成员方法只能访问:静态的成员变量、静态的成员方法。
总之:静态成员方法只能访问静态变量。