Problem z przekazywaniem zmiennej do klasy abstrakcyjnej

0

Witam, początkuje w programowaniu, mam problem a mianowicie jak sprawić by zakomentowana zmienna mogła zostać użyta w ciele tej metody (działała)...
Z góry dziękuje...

public class NrTelefoniczny implements Comparable<NrTelefoniczny>{
 
        Integer nrKierunkowy = 0;
        Integer nrTelefonu = 10;
 
    abstract class Wpis{
        abstract void opis(){
        }
 
    }
 
        class Osoba extends Wpis{
        //nrKierunkowy = 100;
            void opis() {
            }
        }
 
        class Firma extends Wpis{
            void opis() {
            }
        }
 
    public int compareTo(NrTelefoniczny obiekt) {
        return 0;
    }
}

0

Pola możesz ustawiać w konstruktorze, o ile w ogóle dobrze rozumiem, co się tutaj dzieje.

0
Patryk27 napisał(a):

Pola możesz ustawiać w konstruktorze, o ile w ogóle dobrze rozumiem, co się tutaj dzieje.

Zaproponujesz coś ?

0

Spróbuj tak:

NrTelefoniczny.this.nrKierunkowy
0

zacznij od przeprojektowanie klas ktore nie maja zadnego sensu, nie widziaem nigdy zeby nr teleofoniczny byl ownerem czlowieka albo firmy, jesli juz to odwrotnie, konstrukcja jak wyzej od samego poczatku prowadzi ci w zla strone i stad wynikaja kolejne problemy

0

kemot, to jest zadanie do wykonania na studia...

Napisz klase NrTelefoniczny, posiadajaca 2 pola: nrkierunkowy i nrTelefonu i implementujaca interfejs Comparable. Nastepnie utworz abstrakcyjna klase Wpis a nastepnie dziedziczace z niej klasy Osoba i Firma. Klasa Wpis ma abstrakcyjna metode opis, ktora opisuje dany wpis. Byc moze ma rowniez inne metody abstrakcyjne lub nie w miare potrzeb. Klasa Osoba ma zawierac informacje o imieniu, nazwisku, adresie i (w tym nrTelefonu). Klasa Firma ma miec nazwe i adres( w tym NrTelefonu). Utworz kilka obiektow klasy Osoba i kilka obiektow klasy Firma i umiesc je w kontenerze TreeMap, poslugujac sie jako kluczem numerem telefonicznym. Nastepnie wypisz utworzona w ten sposob ksiazke telefoniczna za pomoca iteratora.

coś takiego

1

Ale ten kod powyżej nie ma NIC wspólnego z tym opisem. Opis jest sensowny a kod zupełnie nie. Miałeś zrobić kilka osobnych klas a potem zrobić z nich kompozycje!

class NrTelefoniczny implements Comparable<NrTelefoniczny>{
// cośtam
}

abstract class Wpis implements Comparable<Wpis>{
    protected final Adres adres;
// cośtam dalej
}

class Osoba extends Wpis{
    private final String imie;
    private final String nazwisko;
//cośtam dalej
}

class Firma extends Wpis{
    private final String nazwa;
//cośtam dalej
}

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