1636660511

1636660511



class ZADANIA

{

public static void main(String[] args)

{

Zadanie z = new Zadanie(); z.rozwiazO;

>

>

Zwalniamy użytkownika z konieczności pamiętania nazw kilku metod oraz pamiętania kolejności ich wywołania.

Zwróćmy uwagę, że na razie nie mówimy o żadnym konkretnym zagadnieniu, nie mówimy też o ilości danych wejściowych ani wyjściowych. Dlatego metody void wprowadzDane (), void dyskusjaRozwiazaniaO i void wypiszWynikiO mają puste implementacje. Ich nazwy muszą się jednak pojawić, aby mogły być użyte w funkcji void rozwiazO.

Metody i klasy abstrakcyjne

W sytuacjach, gdy pewne metody są definiowane w klasach tylko po to, aby wprowadzić nazwy, a ich definicje są puste, możemy zastosować tak zwane metody abstrakcyjne. Osoby po kursie programowania w C+ -t znają to pojęcie. W C++ metodę abstrakcyjną definiowało się opuszczając jej definicję, a stosując zapis virtual void f () = 0;, gdzie typ void oraz nazwa f mogą być dowolne.

W Javie metody abstrakcyjne deklaruje się stosując kwalifikator abstract, np.: abstract void f();. Ponownie, typ void oraz nazwa f mogą być dowolne. Ponadto, jeśli w klasie jest zadeklarowana przynajmniej jedna metoda abstrakcyjna, to cała klasa staje się klasą abstrakcyjną, i jako taka wymaga kwalifikatora abstract przed słowem class, np.

abstract class Zadanie

{

abstract void wprowadzDaneO; abstract void dyskusjaRozwiazaniaO; abstract void wypiszWynikiO; void rozwiazO {

wprowadzDane(); dyskusjaRozwiazaniaO; wypiszWyniki();

>

>

Klasy abstrakcyjne mają jedno bardzo ważne ograniczenie: nie wolno generować obiektów klas abstrakcyjnych. Na program

class ZADANIA

{

public static void main(String[] args)

{ Zadanie z = new ZadanieO; }

}

2



Wyszukiwarka

Podobne podstrony:
public class Foiirth { public static void main(String[] args) { Tekst napis = new Tekst(){ void
co to jest zmienna? // Program03.java public class Program03 { public static void main(String[] args
co to jest zmienna? // Program03.java public class Program03 { public static void main(String[] args
class ZADANIA{ public static void main(String[] args){ Zadanie z = new Zadanie();
Aplikacja graficzna import javax.swing.*; class GUI extends JFrame { public static void main (String
evMod (2) class Modifiers extends Mouse Adapter { JFrame f = new JFrameQ; public static void main(St
Najprostsza aplikacja public class Hello{ public static void main(String[ ]
// Program04.java public class Program04 { public static void main(String[]{ // zamiana dwóch zmienn
67
Jacek Rumiński - Język JAVA - Rozdział 8 public static void main(StringQ args) { Socket gniazdo; Str
Program w Javie dass HelloWorldApp { public static void main(String[] args) {
class Punkt { Jak to działa? p! Punkt x 4 y 2 pl.x, pl.y);{ static void Main(string[] args){ Punkt p
namespace ConsoleApplicationl{ class Program{ static void Main(string[] args){ // tworzenie punktu P
46 Ir class Program 47 { 48 static void Main(string[] args) 49 { 50 Budynek b = new
{ static void Main(string[] args) { // tworzenie punktów Punkt pl = new Punkt(); Punkt p2 = new
Struktura programu - Aplikacja: jedna z klas musi zawierać metodę public static void main(String[]

więcej podobnych podstron