是的,如果创建多个类的对象,它们将共享类的静态变量。因为静态变量是属于类的,而不是属于对象的。也就是说,多个对象之间共享的是同一个静态变量,对静态变量的修改会在所有对象之间生效,并且被所有对象共享。
例如,假设有一个名为Person的类,其中包含静态变量count(表示当前创建的Person对象的数量),当创建多个Person对象时,它们都会共享静态变量count的值,各自修改该值也会影响到其他对象访问该值时的结果。
class Person {
public static int count = 0;
public Person() {
count++; //每创建一个对象,count加一
}
}
// 创建多个Person对象
Person p1 = new Person();
Person p2 = new Person();
Person p3 = new Person();
System.out.println(Person.count); //输出结果为3,因为创建了3个Person对象
在上面的示例中,创建了3个Person对象,它们都共享了静态变量count,其中每个对象创建时都对count变量加1。因此,最终输出结果为3。