dziedziczenie po klasie abstrakcyjnej

0

Witam. Od razu zaznaczam, że dopiero zaczynam z Java.

A teraz do rzeczy:
Mam taka o to klasę:

class strona extends HttpURLConnection {

   
  public URL yahoo ;

  public  boolean usingProxy(){ return false;}
  public  void 	disconnect() {}
  public  void connect() {}

  
 
  public strona(){
    
  try{
yahoo = new URL ("http://google.com/");

        }
  catch(IOException a){}

  }
    };

I chciałem napisać program, który wypisuje zawartość strony. Dlategoż stworzyłem klase strona, która dziedziczy po abstrakcyjnej klasie HttpURLConnection. ( Abstrakcyjna, czyli taka, dla której nie można stworzyć obiektu, a jedynie służy do dziedziczenia po niej? ) Nadpisałem jej metody na odwal, bi nie są mi zbytnio potrzebne. I teraz problem polega na tym, że za każdym razem gdy tak robie ( dziedziczę po klasie abstrakcyjnej) to NetBeans pokazuje mi bląd, że nie może znalezć konstruktora klasy abstrakcyjnej po której dziedzicze, czyli w tym wypadku HttpURLConnection. Mógłby mnie ktoś oświecić?

http://download.oracle.com/javase/1.4.2/docs/api/java/net/HttpURLConnection.html

0

Problem taki wystąpi nie przy każdym dziedziczeniu z klasy abstrakcyjnej, tylko przy dziedziczeniu z klasy, która nie ma domyślnego konstruktora bezparametrowego.
Gdy istnieje konstruktor domyślny, kompilator dodajego jego wywołanie automatycznie, jeśli nie ma w kodzie wywołania żadnego konstruktora. Jeśli jednak klasa bazowa nie ma konstruktora domyślnego, kompilator nie wie, o który chodzi, więc musisz w konstruktorze swojej klasy samodzielnie wywołać konstruktor klasy bazowej. W tym konkretnym przypadku wybór wielki nie jest: http://download.oracle.com/javase/6/docs/api/java/net/HttpURLConnection.html#constructor_summary

czyli:

	public strona()
		throws MalformedURLException
		{
		super(new URL("url"));
		//reszta kodu
		}

1 użytkowników online, w tym zalogowanych: 0, gości: 1