Java 个属性

Java attributes

我正在尝试为我开发的 android 游戏构建 UML class 模型。我发现很难理解对象、属性和操作之间的区别。有什么建议吗?

示例:

对象:狗,Table,人,车... Attributes(属性):Arms, Legs, Tires ... 操作(方法):drive(), bark(), eat(), sleep() ...

买一本了解 OOP 基础知识的好书。

对象是 classes 的实例,因此请考虑 classes、属性和操作。

Classes 直接映射到 UML class。

属性是 class 的字段或属性。

操作是作为方法公开的逻辑。不要在此处包括 getter 和 setter - 它们本质上是解决 Java 中缺少真实属性的方法,因此已在属性部分中介绍。

public class Person {

    private final String name;
    private final int age;

    public Person(String name,
                  int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public String toString() {
        return "Person " + name + " is " + age + " years old";
    }
}

在 UML 中,这将转换为

Class

属性姓名、年龄

操作 toString