1:extends Shape 后 就可以直接用Shape方法中的方法和成员变量(无论是父类抽象,还是普通父类)。例如:
public abstract class Shape {
protected DrawAPIService drawAPI;
protected Shape(DrawAPIService drawAPI){
this.drawAPI = drawAPI;
}
public abstract void drawAbstract();
}
public class Circle extends Shape {
private int radis;
protected Circle(int radis,DrawAPIService drawAPI) {
super(drawAPI);
this.radis = radis;
}
//方法直接拿过来就行
public void drawAbstract() {
**//protected DrawAPIService drawAPI; 这一成员变量可以直接拿过来用**
drawAPI.draw(radis,0,0);
}
}
2:当一个子类(Top)继承父类(Book) 。父类组装好数据后,子类也想同样组长直接把Top放到组装数据的父类方法里面即可。
public class Top extends Book{
}
public class Book {
private String name;
private String price;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
}
3:公共变量的值在另一个类中的使用
在一个公共类(UserUtil)公共方法中有一个公共变量(userkey),这时候另一个实现类(BookServiceImpl)中需要userkey的值。
解决:直接
public class UserUtil{
public static final String userkey;
}
public class BookServiceImpl extends UserUtil {
public String getStr(){
//直接userkey拿过来使用就好
}
}