Java定义一个红酒类RedWine,包含的属性为:品牌、产地、价格和生产年份,对所有的属性提供一个get和set方法,价格为私有属性;为RedWine类提供不带参数和带参数的构造方法;定义一个message方法,当访问该方法的时候,可以返回红酒的品牌、产地、价格和生产年份的信息。再在类中定义一个main方法,于其中创建一个红酒对象,并调用它的message方法,打印返回的信息。
时间: 2024-03-17 11:45:33 浏览: 58
好的,这是一个Java的面向对象编程问题。下面是实现的代码:
```java
public class RedWine {
private String brand;
private String origin;
private double price;
private int productionYear;
public RedWine() {}
public RedWine(String brand, String origin, double price, int productionYear) {
this.brand = brand;
this.origin = origin;
this.price = price;
this.productionYear = productionYear;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getOrigin() {
return origin;
}
public void setOrigin(String origin) {
this.origin = origin;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getProductionYear() {
return productionYear;
}
public void setProductionYear(int productionYear) {
this.productionYear = productionYear;
}
public String message() {
return "Brand: " + brand + ", Origin: " + origin + ", Price: " + price + ", Production Year: " + productionYear;
}
public static void main(String[] args) {
RedWine redWine = new RedWine("Chateau Lafite Rothschild", "France", 1988.0, 1988);
System.out.println(redWine.message());
}
}
```
在这个代码中,我们定义了一个RedWine类,它包含了品牌、产地、价格和生产年份等属性,并提供了相应的get和set方法。注意,价格是私有属性,只能通过set方法来设置。我们还提供了不带参数和带参数的构造方法,以便创建RedWine对象。
在message方法中,我们将红酒的品牌、产地、价格和生产年份信息组合成一个字符串,并返回。在main方法中,我们创建了一个RedWine对象,并调用它的message方法,将返回的信息打印出来。
当我们运行这个程序时,可以看到如下的输出结果:
```
Brand: Chateau Lafite Rothschild, Origin: France, Price: 1988.0, Production Year: 1988
```
这个结果正是我们期望的红酒信息。