我开始更多地了解Java的概念方面以及类,它们的对象和实例变量的概念。尽管我知道类代表一个概念,但是对象是这些概念的体现,而实例变量应该是这些概念的属性和行为-为什么将它们专门称为实例变量?对象不是类的“实例”吗? 这是一个示例:考虑类Person
class Person {
private int age;
private String name;
public Person(String userName, int userAge) {
age = userAge;
name = userName;
}
}
public class Tester {
public static void main(String[] args) {
Person maya = new Person("Maya", 14);
Person jack = new Person("Jack", 16);
}
}
在此类中,我们有两个对象,maya和jack。这两个对象是该类的实例,因为尽管它们属于同一个概念(一个人),但是它们在名称和年龄方面具有不同的属性,这些属性通过实例变量反映出来。每个人都有一个名字和年龄(其行为),但有不同的变体。
答案 0 :(得分:2)
引自Oracle Java教程,https://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html
非静态字段也称为实例变量,因为它们的值对于类的每个实例(换句话说,对于每个对象)都是唯一的;一辆自行车的currentSpeed与另一辆自行车的currentSpeed无关。
答案 1 :(得分:0)
实例变量是属于该实例的变量:每个实例都有自己的变量版本,完全独立于其他实例。您无法通过实例访问实例变量 except 。
将此与静态或类变量进行对比。这样的变量属于该类,因此由该类的所有实例共享。可以通过类或实例访问类变量。