-3

このコードを (A、B、C の 3 つの異なるクラスで) 実行しようとしましたが、実行されません。理由がわかりません。誰でも助けてもらえますか?

public class A {    

    private int number;
    protected String name;
    public double price;

    public A ( ) {
        System.out.println ( "A( ) called"); }

    private void foo1( ) {
        System.out.println( "A version of foo1( ) called"); }

    protected int foo2( ){
        System.out.println( "A version of foo2( ) called");
        return number; }

    public String foo3( ){
        System.out.println( "A version of foo3() called"); 
        return "Hi";            
    }
}

public class B extends A {

    private char service;

    public B ( ) {
        super( );

        System.out.println( "B( ) called"); }

    public void foo1 ( ) {
        System.out.println( "B version of foo1( ) called"); }

    protected int foo2 ( ){
        int n = super.foo2( );
        System.out.println( "B version of foo2( ) called");
        return ( n+5 ); }

    public String foo3 ( ) {
        String temp = super.foo3 ( );
        System.out.println( "B version of foo3( )");
        return ( temp + " foo3" ); } }

public class C extends B {

    public C( ){
        super( );
        System.out.println( "C( ) called"); }

    public void foo1 ( ) {
        System.out.println( "C version of foo1( ) called" );
    }
}
4

3 に答える 3

2

そのようなものは、プログラムを実行できるようにする必要があります

public static void main(String[] args)
{
    A a = new A();
    a.foo2();
    a.foo3();

    //same for B and C
}
于 2013-03-18T00:44:03.147 に答える
2

mainプログラムの開始を指定する方法がありません。次のシグネチャを使用して、クラスの 1 つにメイン メソッドを作成する必要があります。

public static void main(String[] args)
于 2013-03-18T00:41:40.517 に答える
0

同じパッケージにもう 1 つのクラスを追加します。たとえば、次のように Application という名前のクラスを 1 つ作成しました。

  public class Application{
         public static void main(String []args){
                A a = new A();
                a.foo3();
                B b = new B();
                b.foo1();
                C c = new C();
                c.foo1();
         }
  }

そして、もう一度実行してみてください...

于 2013-03-18T00:50:00.860 に答える