Java 指的是名单上的一个班级,新手困惑
我在这里学习生活壁纸。然而,有些事情我不明白 例如,在教程的代码中有一个名为MyPoint的类Java 指的是名单上的一个班级,新手困惑,java,android,Java,Android,我在这里学习生活壁纸。然而,有些事情我不明白 例如,在教程的代码中有一个名为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; } } 然后他创建了一个MyWallperServ
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;
}
}
然后他创建了一个MyWallperService类。在这个类的内部有一行这样的代码
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);
}
私有列表圈;
私人油漆=新油漆();
私有整数宽度;
内部高度;
私有布尔可见=真;
私有整数maxNumber;
启用私有布尔值;
公共数据库引擎(){
SharedReferences prefs=首选项管理器
.GetDefaultSharedReferences(MyWallperService.this);
maxNumber=整数
.valueOf(prefs.getString(“numberOfCircles”,“4”);
touchEnabled=prefs.getBoolean(“touch”,false);
圆圈=新的ArrayList();
paint.setAntiAlias(真);
油漆。设置颜色(颜色。白色);
绘制.设置样式(绘制.样式.笔划);
绘制.设置行程连接(绘制.连接.圆形);
油漆。设置行程宽度(10f);
装卸工岗位(牵引员);
}
您可以看到代码的一部分
private List<MyPoint> circles;
私有列表圈;
这是我不明白的部分?这里发生了什么事?什么将
列出
通过圆圈?有人知道这叫什么吗?此列表是否引用到某个类?因为我不确定我的头衔。谢谢..这是创建对象列表的过程。MyPoint类型对象的列表
在您的例子中,MyPoints是指圆的(x,y)坐标(如您所述)
现在,在上面的一行中,您将MyPoint类型的ArrayList对象指定给List类型的对象引用变量
这称为接口多态性
List
是一个接口,其中asArrayList
a是一个实现List的具体类。
例如:
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());
}
}
}
公共级狗{
私有字符串dName;
普里维特国际酒店;
公共狗(字符串名称、字符串dAge){
this.dName=dName;
this.dAge=dAge;
}
公共字符串getDName(){
返回此.dName;
}
公共字符串getDName(){
把这个还给达格;
}
}
公开课考试{
公共静态void main(字符串[]args){
List dAList=new ArrayList();
添加(新狗(“汤米”,5));
添加(新狗(“斯塔克”,2));
对于(Dog d:dAList){//遍历Dog对象列表
System.out.println(d.getDName());
System.out.println(d.getDAge());
}
}
}
顾名思义,列表
对象是一个由MyPoint
实例组成的列表,根据代码判断,这些实例代表圆的中心。private
标识符只是表示不能从定义它的类之外访问它。尖括号在Java中。它正在创建一个只能容纳MyPoint
objectsrelated的列表:这是否意味着它将是一个MyPoint列表?你有一个非常简单的教程如何工作?谢谢你很好。。。。我将为您编写一小段代码。。。。2分钟后查看我的编辑
circles = new ArrayList<MyPoint>();
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());
}
}
}