这可能是一个简单的问题,但我不熟悉编程。我的问题是如何动态创建类的实例。例如,我有一个圆类,它有计算面积和半面积等方法,类构造函数初始化所有类字段,如半径和其他字段。我想要做的是每当用户想要创建一个新的圆圈时创建一个类的实例。要创建一个圆形课程,这就是我目前所拥有的
circle c1 = new circle(radius);
但是当我编写代码时,这个对象是静态创建的,所以当用户想要创建一个新对象时,如何创建一个新的类实例。
提前感谢您的帮助。 请对编程很新。
答案 0 :(得分:1)
看看它有多么简单
Circle c1 ;
//{
// your users wish and store it in some boolean var .
//}
if (userWantsObjectCreation) {
c1 = new Circle();
}
else {
// your holy logic here instead if object creation .
}
答案 1 :(得分:0)
您可以从用户那里获取输入"创建圈子?输入Y或N"然后使用if else条件
if("Y".equals(input))
{
c1 = new Circle();
}
else{
//something else
}
答案 2 :(得分:0)
基本上,您必须将所有创建的圈子存储在“列表”结构中。
例如:
List<Circle> list = new ArrayList<Circle>();
Circle c1 = new Circle(radius);
list.add(c1);
...
void onUserClickedCreateCircle() {
Circle c = new Circle(15);
list.add(c);
}
void renderAllCirclesOnScreen() {
//Take each circle from the list into variable c
for (Circle c : list) {
drawCircle(c);
}
}
答案 3 :(得分:-1)
语法如下:
ObjectName obj=Class.forName("object name full name").newInstance();
例如,您有一个名为Car的类,它位于com.toyota包中。 然后,您可以使用以下语句实例化Car对象:
Car car=(Car)Class.forName("com.toyota.Car").newInstance();