Gyakorlati alapok III.

Az interfész implementálásának szabályai

 

Ismételjük meg az előző fejezet komplex példakódját:

 

www.informatika-programozas.hu - Interfész

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

import java.math.*;

public interface IKorTulajdonsagok {
    double PI = Math.PI;
    int korSzam = 10;
    double korTerulet(int sugar, double PI);
}

 

 

public class KorTeruletOsszegzo implements IKorTulajdonsagok{

KorTeruletOsszegzo(){
    System.out.println(osszegzo());
};

@Override
public double korTerulet(int sugar, double PI){
    return (sugar * sugar) * PI;
}

public double osszegzo(){
    double korTeruletOsszeg = 0;
    for(int i = 1; i <= korSzam; i++){
        int sugar = i;
        korTeruletOsszeg += korTerulet(sugar, PI);
        System.out.println(sugar + " egység sugarú kör területe: " + korTerulet(sugar, PI));
    }
    System.out.print("Körterületek összege: " + korTeruletOsszeg);
    return korTeruletOsszeg;
    }
}

 

 

public class KorTeruletAtlagolo implements IKorTulajdonsagok{

KorTeruletAtlagolo(){
    System.out.println(atlagolo());
};

@Override
public double korTerulet(int sugar, double PI){
    return (sugar * sugar) * PI;
}

public double atlagolo(){
    double korTeruletOsszeg = 0;
    for(int i = 1; i <= korSzam; i++){
        int sugar = i;
        korTeruletOsszeg += korTerulet(sugar, PI);
        System.out.println(sugar + " egység sugarú kör területe: " + korTerulet(sugar, PI));
    }
    System.out.print("Körterületek átlaga: " + korTeruletOsszeg / korSzam);
    return korTeruletOsszeg / korSzam;
    }
}

 

 

public class Main {
public static void main(String[] args) {
    new KorTeruletOsszegzo();
    System.out.println();
    new KorTeruletAtlagolo();
    }
}

 

Végeredmény:

1 egység sugarú kör területe: 3.141592653589793
2 egység sugarú kör területe: 12.566370614359172
3 egység sugarú kör területe: 28.274333882308138
4 egység sugarú kör területe: 50.26548245743669
5 egység sugarú kör területe: 78.53981633974483
6 egység sugarú kör területe: 113.09733552923255
7 egység sugarú kör területe: 153.93804002589985
8 egység sugarú kör területe: 201.06192982974676
9 egység sugarú kör területe: 254.46900494077323
10 egység sugarú kör területe: 314.1592653589793
Körterületek összege: 1209.51317163207051209.5131716320705

1 egység sugarú kör területe: 3.141592653589793
2 egység sugarú kör területe: 12.566370614359172
3 egység sugarú kör területe: 28.274333882308138
4 egység sugarú kör területe: 50.26548245743669
5 egység sugarú kör területe: 78.53981633974483
6 egység sugarú kör területe: 113.09733552923255
7 egység sugarú kör területe: 153.93804002589985
8 egység sugarú kör területe: 201.06192982974676
9 egység sugarú kör területe: 254.46900494077323
10 egység sugarú kör területe: 314.1592653589793
Körterületek átlaga: 120.95131716320705120.95131716320705

 

A kód tanulmányozásával felfedezhetjük, illetve ellenőrizhetjük az interfész implementálásának szabályait: