wywołanie metody(z klasy 1) uzytej w klasie 2

wywołanie metody(z klasy 1) uzytej w klasie 2
KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 30
0

Cześć.
W klasie w TablicaUporządkowana wykorzystuje metode z klasy tablica.

Kopiuj
class TablicaUporządkowana
{
	private int[] tab;
	private int liczbaEle;
 
	public TablicaUporządkowana (Tablica tab) {}
	public TablicaUporządkowana (TablicaUporządkowana tab) {}
	public TablicaUporządkowana(int[] tablica) {
		Tablica t = new Tablica(tab);
		t.sortuj();
        this.tab = t.pobierzTablice();
        this.liczbaEle = t.pobierzLiczbeElementow(); }

Problem mam z wywołaniem tej metody w klasie z wywołaniami
Chcąc wyświetlić liczbe elementow tablicy z klasy Tablica odwołuję się jak poniżej i wszystko działa.

Kopiuj
public class Wywolania {
	
public static void main(String[]args){
Tablica tablica = new Tablica(tablica);
System.out.println("Liczba elementów w tablicy: " + tablica.pobierzLiczbeElementow());

A chcąc wyświetlić liczbe elementów z klasy TablicaUporządkowana robie coś źle

Kopiuj
TablicaUporządkowana tablicaUporzadkowana = new TablicaUporządkowana(tablica);
System.out.println("Liczba elementów w tablicy: " + tablicaUporzadkowana.t.pobierzLiczbeElementow() );

System.out.println("Liczba elementów w tablicy: " + tablicaUporzadkowana.pobierzLiczbeElementow());  //tak tez nie działa

Mógłby mi ktoś napisać jak to powinno wyglądać

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0
  1. Nie powinieneś w ogóle odnosić się do pól klasy bezpośrednio w ten sposób, tylko za pomocą akcesorów
  2. 't' nie jest polem klasy TablicaUporądkowana tylko zmienną lokalną w konstruktorze. To znaczy że po wyjściu z konstruktora 't' po prosty zniknie. Musisz je przypisać do pola klasy.
_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

Pierwsze nie działa ponieważ TablicaUporządkowana nie ma składowej t, t jedynie lokalna zmienna w jednej z metod.
Drugie nie działa ponieważ TablicaUporządkowana nie ma metody pobierzLiczbeElementow():

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.