如何使用 "getter" 方法(适合初学者)?

How do I use "getter" methods (for beginners)?

当涉及到 Java 编程时,您会在自己的过程中偶然发现这一点。这是一个基本答案,可帮助新程序员学习如何使用 getter 方法,而无需了解该领域的术语或复杂性。

通过创建访问器方法(而不是创建修改器方法)。

public class MyClass {
  public MyClass(int v) {
    this.myField = v;
  }
  private int myField;
  public int getMyField() {
    return myField;
  }
}

然后你可以用 MyClass.

的实例在其他 class 中调用 "getter"
public class SomeOtherClass {
  public static void doSomething(MyClass my) {
    System.out.println(my.getMyField());
  }
  public static void main(String[] args) {
    doSomething(new MyClass(42)); // <-- for example.
  }
}

在处理 Java 项目时,您会偶然发现 "getter" 方法或 "get" 方法。这就是我按照这些说明解决问题的方法。

如果您对为什么要使用 "getter" 方法感到困惑,请遵循此 link

  1. 请注意,这是针对初学者和我使用的 language/format 可能(在某些情况下是)不合适。
  2. 请注意,您还需要对 Java 有一个大致的概念。
  3. 这是为那些不理解某些 Java 术语的人准备的
  4. 看看我的(示例)项目设置。

Package Explorer/Setup

  • Project Name
    • src
      • (default package/package name)
        • Class1.java
        • Class2.java

Class 1

public class Class1 {

    // creates an object
    static Class2 class2 = new Class2();

    public static void main(String[] args) {

        // this will print our method (method1) in our class (Class2)
        System.out.println(class2.method1());

    }
}

Class 2

public class Class2 {

    // this is the method we are accessing
    public double method1(){

    // this is what we are returning (sending back)
    return 2.5;

    }
}

Output (console)

2.5

那么我们如何访问 "getter" 方法呢?

如果您还没有注意到,我们使用...

在 class "Class1" 中打印了它
System.out.println(class2.method1());

我们使用 class2. 因为我们创建了一个允许我们访问 Class2 的对象。请注意,class2 是小写的,而 Class2 是大写的,这是因为 class2(小写)是我们创建的对象。因此,我们使用该对象来使用我们的 "getter" 方法 而不是我们的 class。我们使用...

创建我们的对象
static Class2 class2 = new Class2();