static关键字的使用及其注意事项:
1、随着类的加载而加载到静态区,优先对象而存在的,静态成员变量会被系统赋予默认值
2、被static修饰的成员,又称之为类成员(被静态修饰的成员变量或者成员方法),可以直接通过类名的方式进行访问
3、非静态的成员方法中既可以调用非静态的成员方法,也可以调用静态的成员方法
4、静态的成员方法中只能调用静态的成员(成员变量或成员方法)
静态的成员变量既可以通过对象的方式进行访问,也可以直接通过类名的方式进行访问
非静态的成员变量,只能通过对象的方式进行访问
static关键字特点
1.随着类的加载而加载
2.优先于对象存在
3.被类的所有对象共享,这也是我们判断是否使用静态关键字的条件
4.可以通过类名调用
static关键字注意事项
**在静态方法中是没有this关键字的**
静态方法只能访问静态的成员变量和静态的成员方法
java提供了一个关键字,可以修饰类中的成员(成员变量,成员方法),static
被static修饰的成员变量或者成员方法,可以被所有该的类的对象共享。
public class Person {
private String name;
private int age;
// private String nationality;
private static String nationality; // 静态的成员变量
public Person() {
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public Person(String name, int age, String nationality) {
this.name = name;
this.age = age;
this.nationality = nationality;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getNationality() {
return nationality;
}
public void setNationality(String nationality) {
this.nationality = nationality;
}
public void show() {
System.out.println("姓名:" + name + ", 年龄:" + age + ", 国籍:" + nationality);
}
}
class Demo2{
public static void main(String[] args) {
Person p1 = new Person("蔡徐坤", 18, "中国");
Person p2 = new Person("邓超", 19);
Person p3 = new Person("冯提莫", 20);
p1.show();
p2.show();
p3.show();
Person p4 = new Person("魏一民", 1);
p4.show();
}
}
标签:name,关键字,age,成员,day07,Person,static,public,String
From: https://www.cnblogs.com/qiwei-bigdata/p/18339507