gpt4 book ai didi

java - 在列表中推荐一个类(class)新手困惑

转载 作者:搜寻专家 更新时间:2023-11-01 07:35:20 27 4
gpt4 key购买 nike

我在研究动态壁纸site .但是有些事情我不明白。

本教程的代码示例中有一个名为 MyPoint 的类

public class MyPoint {
String text;
private int x;
private int y;

public MyPoint(String text, int x, int y) {
this.text = text;
this.x = x;
this.y = y;
}
}

然后在他创建了一个 MyWallpaperService 类之后。在那个类里面有这样一行代码

 private List<MyPoint> circles;
private Paint paint = new Paint();
private int width;
int height;
private boolean visible = true;
private int maxNumber;
private boolean touchEnabled;

public MyWallpaperEngine() {
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(MyWallpaperService.this);
maxNumber = Integer
.valueOf(prefs.getString("numberOfCircles", "4"));
touchEnabled = prefs.getBoolean("touch", false);
circles = new ArrayList<MyPoint>();
paint.setAntiAlias(true);
paint.setColor(Color.WHITE);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeWidth(10f);
handler.post(drawRunner);
}

可以看到部分代码有

private List<MyPoint> circles;

这是我不明白的部分?这里发生了什么?什么会List<MyPoint>通过圈子?有人知道怎么称呼这个吗?这个列表是指一个类(class)吗?因为我不确定我的头衔。谢谢..

最佳答案

private List<MyPoint> circles;

声明圆圈是一个 List类型 MyPoint , (即,它将包含 MyPoint 类型的对象)。

circles = new ArrayList<MyPoint>();

现在在上面的行中,您将类型为 MyPoint 的 ArrayList 对象分配给类型为 List 的对象引用变量。

这称为接口(interface)多态性。

List是一个接口(interface),其中ArrayList 具体类实现列表。

例如:

public class Dog{

private String dName;
priavet int dAge;

public Dog(String dName, String dAge){

this.dName = dName;
this.dAge = dAge;


}



public String getDName(){

return this.dName;

}

public String getDName(){

return this.dAge;

}

}


public class Test{


public static void main(String[] args){

List<Dog> dAList = new ArrayList<Dog>();

dAList.add(new Dog("Tommy",5));
dAList.add(new Dog("Stark",2));

for(Dog d : dAList){ // Iterating over the List of Dog objects

System.out.println(d.getDName());
System.out.println(d.getDAge());

}


}



}

关于java - 在列表中推荐一个类(class)新手困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12170238/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com