praca z plikami, dziedziczenie.

0

Witam. To znowu ja :P jest już na etapie zawieszania sobie pętli na szyji... Totalnie utknąłem.. A problem jest taki:

  1. Po fizycznym otworzeniu pliku do którego wcześniej zapisuje stringi wszystko jest w JEDNEJ linii. jak wyświetlam w programie Set do którego wrzuciłem kolejne stringi to wyświetla dobrze.
  2. zrobiłem nową klasę która rozszerzza tą klase file, pobiera sety i wrzuca je do listy(dzięki temu mogę pobierać i usuwać elementy). Cały czas było pusto więc sprawdziłem i dla dwóch list do której wrzuciłem wszystkie elementy z setu wartości isEmpty() dają mi w obydwu przypadkach true
  3. Jak mogę wywoływać te klasy wzajemnie? Bo teraz uruchamiam program z klasy file zapisuje i odczytuje, potem uruchamiam program z innej klasy, która pobiera wartości z pierwszej. Bardzo proszę o pomoc. Pewnie są gdzieś głupie błędy więc proszę o wyrozumiałość. Mam problemz tymi 3 punktami.
    [(http://wklejto.pl/530666)] <--klasa File
    [(http://wklejto.pl/530668)] <--klasa Pracownik która rozszerza klase File
0
  1. Wytłumacz lepiej w czym jest problem.
  2. Mi zwraca false. Wyrzuć tego maina z klasy Pracownik i wywołuj w tym z klasy File.
  3. Tak jak wyżej. Masz już maina w klasie File i tam tworzysz te obiekty. Chociaż z racji tego, że u Ciebie wszystko jest static to nie tworzysz obiektów tylko wywołujesz NazwaKlasy.NazwaMetody(), np. Pracownik.getName()
0

Problem jest w tym że zapisując stringi do pliku zapisuje je jako jeden łańcuch bez przerw.
Odczytując z pliku wrzucam wszystko do setu. W innej klasie pobieram te sety i wrzucam je do list aby moc operować na stringach. Po wykonaniu tej czynności sprawdzam czy lista jest pusta. I jest. No i kolejny problem ale już chyba rozwiązany przez Ciebie : Jak to mogę wszystko zrobić w jednym programie?

0

I mam jeszcze jedno pytanie: Powinienem/nie powinienem używać metod statycznych i dlaczego? Za bardzo się na idei nie znam ale jakoś przyjemniej jest mi nie tworzyć obiektów xD

0

Problem jest w tym że zapisując stringi do pliku zapisuje je jako jeden łańcuch bez przerw.
Odczytując z pliku wrzucam wszystko do setu. W innej klasie pobieram te sety i wrzucam je do list aby moc operować na stringach. Po wykonaniu tej czynności sprawdzam czy lista jest pusta. I jest. No i kolejny problem ale już chyba rozwiązany przez Ciebie : Jak to mogę wszystko zrobić w jednym programie?

0

I mam jeszcze jedno pytanie: Powinienem/nie powinienem używać metod statycznych i dlaczego? Za bardzo się na idei nie znam ale jakoś przyjemniej jest mi nie tworzyć obiektów xD

0

Miałem na myśli jedynie problem z pierwszego punktu. To dziwne, że po dodaniu

Names.write("\n");

ciągle zapisuje Ci wszystko w jednej linii. U mnie przykładowo działa to bezproblemowo.

Co do pytania o metody statyczne to nie jestem znawcą w tej kwestii, więc lepiej żeby wypowiedział się na ten temat ktoś bardziej doświadczony, bo nie chcę Ci nagadać głupot.

0
  • Co do sensu metod statycznych to przeczytaj sobie jeden z wielu tutoriali
  • Nie twórz klasy o nazwie File ;) później się pomylisz z java.util.File
  • Odczyt z pliku rób za pomocą streamów. Najprostszy przykład do pobrania wszystkich linii z pliku to
Files.lines(Paths.get(filename)).collect(Collectors.toList());
0
Pinek napisał(a):
  • Co do sensu metod statycznych to przeczytaj sobie jeden z wielu tutoriali
  • Nie twórz klasy o nazwie File ;) później się pomylisz z java.util.File
  • Odczyt z pliku rób za pomocą streamów. Najprostszy przykład do pobrania wszystkich linii z pliku to
Files.lines(Paths.get(filename)).collect(Collectors.toList());

Bo ja wiem czy to najprostszy sposób :P bardziej zagmatwany i go nie ogarniam :P

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