下面的代码是Java代码。 我看到这里有封装和构造函数代码。 我不明白的是这一部分:
public static final Drink[] drinks = {
new Drink("Latte", "A couple of espresso shots with steamed milk",
R.drawable.latte),
new Drink("Cappuccino", "Espresso, hot milk, and a steamed milk foam",
R.drawable.cappuccino),
new Drink("Filter", "Highest quality beans roasted and brewed fresh",
R.drawable.filter)***
我看到有一个数组,但我不清楚[]后面的“饮料”在做什么,或者数组里面实际设置了什么? 我们在建造物体吗? 或者我到底在干嘛?
package com.hfad.starbuzz;
public class Drink {
private String name;
private String description;
private int imageResourceId;
***//drinks is an array of Drinks
public static final Drink[] drinks = {
new Drink("Latte", "A couple of espresso shots with steamed milk",
R.drawable.latte),
new Drink("Cappuccino", "Espresso, hot milk, and a steamed milk foam",
R.drawable.cappuccino),
new Drink("Filter", "Highest quality beans roasted and brewed fresh",
R.drawable.filter)***
};
//Each Drink has a name, description, and an image resource
private Drink(String name, String description, int imageResourceId) {
this.name = name;
this.description = description;
this.imageResourceId = imageResourceId;
}
public String getDescription() {
return description;
}
public String getName() {
return name;
}
public int getImageResourceId() {
return imageResourceId;
}
public String toString() {
return this.name;
}
}
这里,我们正在创建一个drink
对象数组。 我们不是先创建不同的饮料,然后将它们添加到数组中,而是直接在数组中创建它们。
public static final Drink[] drinks = {
new Drink("Latte", "A couple of espresso shots with steamed milk",
R.drawable.latte),
new Drink("Cappuccino", "Espresso, hot milk, and a steamed milk foam",
R.drawable.cappuccino),
new Drink("Filter", "Highest quality beans roasted and brewed fresh",
R.drawable.filter)***
};
public
是访问说明符,意味着可以在任何地方访问变量。
drings
是数组名称。 它是drink
类型的数组。
final
是一个修饰符,表示在C
语言中不能修改的常量
的类型。
它在申报时初始化。 这就是我们在{
和}
中指定声明的原因
每个new
关键字都创建一种类型的drink
对象。 它需要三个参数。
我看到有一个数组,但我不清楚“[”之后的“饮料”在做什么,或者数组中实际设置了什么?
“drinks”是变量的名称。 本例中的变量类型为drink[]
.。。。 饮料
对象的数组。 通过给一个变量命名,然后可以引用它。 变量本质上是赋予对象的名称,在代码中使用该名称来读取或操作对象。
我们在建造物体吗? 或者我到底在干嘛?
我们正在构建多个对象。 首先,我们使用Drink类的构造函数构建Drink对象。 其次,我们正在构建一个Drink对象数组,并使用数组赋值表示法。。。。 也就是花括号。 下面是正在使用的数组赋值的另一个示例。
Object[]variableName={new Object(),new Object()}
在上面的代码中,我们声明并实例化了一个对象数组,我们给它赋了一个变量名,并且我们使用它们的默认构造函数实例化了2个对象。。。。 新对象()
。
这些都是Java的核心概念,建议你读一读Java的介绍,也许能更好地理解这些概念。