Klasy Java.

0

Potrzebuje pomocy z klasami w javie, muszę zrobić program który będzie:

1.Klasa Osoba
2.Imie, nazwisko, rok ur, waga.
3.To wszystko zrobić w konstruktorze.
4.Tworzenie osoby, edyscja pól.
5.Usuwanie osoby
6.Wyświetlanie osoby.
7.Wiele osób.

Jak się za to zabrać jak zdeklarować konstruktor, w scanner.
Wydaje mi się że trzeba to zrobić w tablicach, tylko nie wiem jak je zdefiniować.

package com.company;
import java.util.Scanner;
import java.util.Set;

public class Main {




    public static void main(String[] args) {

        class osoba {

            String imie;
            String nazwisko;
            int rok;
            double waga;

            osoba(String name, String surname, int age, double wage) {
                imie = name;
                nazwisko = surname;
                rok = age;
                waga = wage;
            }


            public void setImie(String imie) {
                this.imie = imie;

            }

            public void setNazwisko(String nazwisko) {
                this.nazwisko = nazwisko;
            }

            public void setRok(int rok) {
                this.rok = rok;
            }

            public void setWaga(double waga) {
                this.waga = waga;
            }

            public String getImie() {
                return imie;
            }

            public String getNazwisko() {
                return nazwisko;
            }

            public int getRok() {
                return rok;
            }

            public double getWaga() {
                return waga;
            }



        }

       Scanner dane=new Scanner(System.in);
        System.out.println("Podaj imie");
        String imie=dane.nextLine();
        System.out.println("Podaj nazwisko");
        String nazwisko=dane.nextLine();
        System.out.println("Podaj rok urodzenia");
        int rok=dane.nextInt();
        System.out.println("Podaj wage");
        double waga=dane.nextDouble();



        String

    }
}
```java
0

Czemu klasę Osoba tworzysz jako wewnętrzną w klasie Main? Nie lepiej by było oddzielnie?

 public class Person{

           private String name;
             private String surname;
            private  int age;
            private double mass;

          public  Person(String name, String surname, int age, double mass) {
                this.name = name;
                this.surname = surname;
                this.age = age;
                this mass = mass;
            }
 //i co tam jeszcze potrzebne/wymagane
}
 public class Main {

    public static void main(String[] args) {
    
    //wczytywanie danych  ze Scannera 

    person1 = new Person(wczytane dane);

}
}

5.Usuwanie osoby

Chyba
person1 = null; //ale ręki sobie nie dam uciąć

6.Wyświetlanie osoby.

W klasie Person(Osoba) utwórz metodę toString() zwracającą odpowiedni napis
PS. Wage raczej nie oznacza wagi.

0

Może osoby przechowuj w liście?

List<Person> persons = new ArrayList<Person>;

i korzystaj z funkcji listy, czyli

persons.remove(index);
persons.add(person);

Natomiast do wypisywania danych przesłoń metodę toString.

0

albo w mapie ;p

Map<String, Osoba> map = new HashMap<>();
map.put("janusz", new Osoba());
map.remove("janusz");
0

co to za kierunek, bo w ostatnim tygodniu widzę kolejną osobę co ma do zrobienia dokładnie to samo :D

Po int rok=dane.nextInt(); daj dane.next()

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