public class Bird { private String bName;//小鸟名 public Bird(String name) { bName = name; } public void fly() {//飞行 System.out.println(bName +"is flying…"); } public void hit() {//撞击 System.out.println(bName +"hits the green pig!"); } public void explode() {//爆炸 System.out.println("Boom!!!"); } }. 设计 BlackBird 类,除构造方法和继承的属性或方法外,仅对外提供 attack 方法。attack 方法的功能为:先飞行,再爆炸。
时间: 2024-03-21 19:38:29 浏览: 15
可以这样设计 BlackBird 类:
```
public class BlackBird extends Bird {
public BlackBird(String name) {
super(name);
}
public void attack() {
fly();
explode();
}
}
```
BlackBird 继承自 Bird 类,拥有其所有属性和方法。对外只提供了 attack 方法,实现了先飞行再爆炸的功能。在 attack 方法中,调用了父类的 fly 和 explode 方法。
相关问题
public class Bird { private String bName;//小鸟名 public Bird(String name) { bName = name; } public void fly() {//飞行 System.out.println(bName +"is flying…"); } public void hit() {//撞击 System.out.println(bName +"hits the green pig!"); } public void explode() {//爆炸 System.out.println("Boom!!!"); } }设计 RedBird 类,除构造方法和继承的属性或方法外,仅对外提供 attack 方 法。attack 方法的功能为:先飞行,再撞击。
可以这样设计 RedBird 类:
```
public class RedBird extends Bird {
public RedBird(String name) {
super(name);
}
public void attack() {
fly();
hit();
}
}
```
RedBird 继承自 Bird 类,拥有其所有属性和方法。对外只提供了 attack 方法,实现了先飞行再撞击的功能。在 attack 方法中,调用了父类的 fly 和 hit 方法。
class Book{ public String isbn; public String bname; public String publish; public float price; } class BookManage{ private final int BOOK_MAX = 100; private Book []books; private int size; public BookManage(){ books = new Book[BOOK_MAX]; } public void add(Book book){ books[size] = book; size ++; } public int findBookByIsbn(int index, String isbn){ // 补充代码 ...... } public int findBookByBname(int index, String bname){ // 补充代码 ...... } public int findBookByPrice(int index, float price){ // 补充代码 ...... }
你的第一个问题是:
在 BookManage 类中,如何补充代码实现以下三个方法:
1. 根据书的 ISBN 查找书的位置并返回索引值;
2. 根据书名查找书的位置并返回索引值;
3. 根据价格查找书的位置并返回索引值。
答案如下:
1. 根据书的 ISBN 查找书的位置并返回索引值:
```
public int findBookByIsbn(int index, String isbn){
for(int i = 0; i < index; i++){
if(books[i].isbn.equals(isbn)){
return i;
}
}
return -1;
}
```
2. 根据书名查找书的位置并返回索引值:
```
public int findBookByBname(int index, String bname){
for(int i = 0; i < index; i++){
if(books[i].bname.equals(bname)){
return i;
}
}
return -1;
}
```
3. 根据价格查找书的位置并返回索引值:
```
public int findBookByPrice(int index, float price){
for(int i = 0; i < index; i++){
if(books[i].price == price){
return i;
}
}
return -1;
}
```