【发布时间】:2021-12-12 09:23:19
【问题描述】:
我在 java 中自动命名变量时遇到了很多问题。
有问题的问题:
我正在做一个课堂点(不同于java.awt.Point)。它有一个属性this.name。从testPoint.java 我只需创建一个Point 并打印它的名称。
要创建一个点,我有两个链接的构造函数:
public Point() {
this("AutoName");
}
public Point(String name) {
this.name = name;
}
如果在testPoint.java 中给出了名称,则将根据该名称命名该点。如果没有给出名称,该点将被命名为AutoName。
我想要的是,如果没有给出名称,第一个没有命名的 Point 将获得 AutoName1 作为名称,第二个 AutoName2 等等。
有没有办法在不引入新课程的情况下做到这一点?如果我可以像在 C 和 Python 中一样在 java 中创建全局变量会很容易,但我认为这不尊重封装原则......
【问题讨论】:
标签: java constructor encapsulation naming