📜  java 字段 - Java (1)

📅  最后修改于: 2023-12-03 15:15:59.960000             🧑  作者: Mango

Java 字段

Java 是一种面向对象的编程语言,它支持通过声明变量来存储数据。Java 中的变量分为两种类型:字段和局部变量。字段是类或接口的成员,用于描述对象的特征或状态。

声明字段

字段的声明格式如下:

[可见性修饰符] 数据类型 字段名 [= 初始值];
  • 可见性修饰符:指定字段的可见性。常用可见性修饰符包括 public、protected、private 和默认可见性(即没有修饰符)。
  • 数据类型:指定字段的数据类型。Java 内置了基本数据类型和引用数据类型,也支持自定义数据类型(例如类、接口和枚举)。
  • 字段名:指定字段的名称。字段名不能与类中其他字段或方法重名。
  • 初始值:指定字段的初始值。如果没有初始值,则使用默认值。

下面是一个字段声明的例子:

public class Person {
    public String name;
    protected int age;
    private boolean married = false;
}

该类中声明了三个字段:name、age 和 married。name 字段使用了 public 可见性修饰符,可以被所有代码访问到。age 字段使用了 protected 可见性修饰符,只能被该类及其子类的代码访问到。married 字段使用了 private 可见性修饰符,只能被该类的代码访问到。

访问字段

Java 中可以通过“对象.字段名”的方式来访问对象的字段。下面是一个访问字段的例子:

Person person = new Person();
person.name = "张三";
System.out.println(person.name);

上面的代码中,首先创建了一个 Person 对象,然后使用“person.name”来设置和获取该对象的 name 字段的值。

静态字段

静态字段是属于类的字段,它们在类加载时被初始化,不依赖于对象而存在。静态字段和实例字段在声明时的唯一区别是使用了 static 关键字。静态字段可以被所有对象共享,也可以通过类名来访问。

下面是一个静态字段的例子:

public class Counter {
    private static int count = 0;
    
    public Counter() {
        count++;
    }
    
    public static int getCount() {
        return count;
    }
}

该类包含了一个静态字段 count 和一个构造函数,每创建一个对象就会执行一次构造函数并将 count 值加 1。getCount 方法可以用来获取 Counter 类创建的对象数目。

继承字段

Java 中的继承机制包含了继承字段的能力。子类可以继承父类的字段,但前提是父类字段的可见性修饰符要允许子类访问。

下面是一个继承字段的例子:

public class Student extends Person {
    public int grade;
    
    public void study() {
        System.out.println(name + "在学习");
    }
}

该类继承了 Person 类的 name 和 age 字段,并新增了一个 grade 字段。因为 Person 类中使用的是 public 和 protected 可见性修饰符,所以子类可以访问这两个字段。

总结

字段是 Java 中存储数据的一种方式,它描述了对象的各种特征和状态。Java 中的字段分为实例字段和静态字段,它们在声明时需要指定可见性修饰符和数据类型。Java 中的继承机制包含了继承字段的能力,子类可以继承父类的字段。