Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 指的是名单上的一个班级,新手困惑_Java_Android - Fatal编程技术网

Java 指的是名单上的一个班级,新手困惑

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

我在这里学习生活壁纸。然而,有些事情我不明白

例如,在教程的代码中有一个名为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;
  }
} 
然后他创建了一个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
是一个接口,其中as
ArrayList
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());

         }


     }



}