1、你写的语法没有问题
2、你的基类 Box 使用abstract 没有什么意义,一般的习惯 抽象类会有一些公共的实现方法和抽象方法,在公共方法里面调用抽象方法 我修改你的代码如下
abstract class Box{
double width;
double height;
double depth;
public void getvol(String whichbox){
                   //一些公共操作
printname(); }
        
         public  abstract void printname();
}
public class MyBox extends Box{
 public  void printname(){
System.out.print(whichbox+"'s Volume is:");
//你的子类具体操作} public static void main(String args[]){
MyBox mybox1=new MyBox();
MyBox mybox2=new MyBox();
double vol;
mybox1.width=10;
mybox1.height=20;
mybox1.depth=15;
mybox2.width=3;
mybox2.height=6;
mybox2.depth=10;
mybox1.getvol("mybox1");
mybox2.getvol("mybox2");
}
}