分析程序,若有错,说出错误原因

package  abc;
class A {
    protected int x;
    protected void print() { System.out.println(x); }
}
package xyz;
import abc.A;
class B extends A {
    void test(A a, B b) {
        a.x = 100;
        a.print();
        b.x = 100;
        b.print();
    }
public void static main(String args[]){
    B b = new B();
    b.test();
}
}

1.package xyz或package  abc;要放在文件第一行并且一个文件只能出现一次package

2.main方法中b.test()会错误 因为没有不需要参数的test方法

3.main方法错误先用修饰符static再使用void返回值

修改代码如下

package T1;

class A {
	protected int x;

	protected void print() {
		System.out.println(x);
	}
}

class B extends A {
	void test(A a, B b) {
		a.x = 100;
		a.print();
		b.x = 100;
		b.print();
	}

	public static void main(String[] args) {
		B b = new B();
		b.test(new A(), b);
	}
}