|
|
- Tee luokka Tee luokka Asunto, jolla on attribuutit tyyppi (String), osoite (String), pinta-ala (double), hinta (double) ja kuvaus(String). Tee luokkaan parametriton ja parametrillinen konstruktori, set- ja get-metodit ja toString-metodi. Tee ohjelmaluokka AsuntoOhjelma, jossa tehdään yksi olio.
-
- ```
- Example output:
- Anna asunnon tyyppi: Kerrostalo
- Anna osoite: Ivalontie 12, 99800 Inari
- Anna pinta-ala: 72,0
- Anna hinta: 72000,00
- Anna kuvaus: valon keskustassa katutasossa 72 m2:n liikehuoneisto
-
- Tyyppi: Kerrostalo
- Osoite: Ivalontie 12, 99800 Inari
- Pinta-ala: 72,00
- Hinta: 72000,00 euroa
- Kuvaus: valon keskustassa katutasossa 72 m2:n liikehuoneisto
- ```
-
- ------------------
-
- **Asunto.java**
-
- ```
- import java.text.DecimalFormat;
- import java.util.InputMismatchException;
- import java.util.Scanner;
-
- public class Asunto {
-
- private String tyyppi, osoite, kuvaus;
- private double pinta_ala, hinta;
-
- // set-metodit
- public void setTyyppi(String tyyppi) {
- this.tyyppi = tyyppi;
- }
-
- public void setOsoite(String osoite) {
- this.osoite = osoite;
- }
-
- public void setKuvaus(String kuvaus) {
- this.kuvaus = kuvaus;
- }
-
- public void setPinta_ala(double pinta_ala) {
- this.pinta_ala = pinta_ala;
- }
-
- public void setHinta(double hinta) {
- this.hinta = hinta;
- }
-
- // get-metodit
- public String getTyyppi() {
- return tyyppi;
- }
-
- public String getOsoite() {
- return osoite;
- }
-
- public String getKuvaus() {
- return kuvaus;
- }
-
- public double getPinta_ala() {
- return pinta_ala;
- }
-
- public double getHinta() {
- return hinta;
- }
-
- // Parametrillinen konstruktori
- public Asunto(String tyyppi, String osoite, double pinta_ala, double hinta, String kuvaus){
- this.setTyyppi(tyyppi);
- this.setOsoite(osoite);
- this.setPinta_ala(pinta_ala);
- this.setHinta(hinta);
- this.setKuvaus(kuvaus);
- }
-
- // Parametriton konstruktori
- public Asunto() {
-
- Scanner syote = new Scanner(System.in);
-
- System.out.print("Anna asunnon tyyppi: ");
- this.setTyyppi(syote.nextLine());
-
- System.out.print("Anna osoite: ");
- this.setOsoite(syote.nextLine());
-
- try {
- System.out.print("Anna pinta-ala: ");
- this.setPinta_ala(syote.nextDouble());
- } catch (InputMismatchException e) {
- System.err.println("Syöttämäsi pinta-ala ei ole kelvollinen luku");
- System.exit(1);
- }
-
- try {
- System.out.print("Anna hinta: ");
- this.setHinta(syote.nextDouble());
- } catch (InputMismatchException e) {
- System.err.println("Syöttämäsi hinta ei ole kelvollinen luku");
- System.exit(1);
- }
-
- // Consume newline
- syote.nextLine();
-
- System.out.print("Anna kuvaus: ");
- this.setKuvaus(syote.nextLine());
-
- }
-
- @Override
- public String toString() {
- DecimalFormat r2 = new DecimalFormat(".00");
-
- return String.format(
- "Tyyppi: %s\nOsoite: %s\nPinta-ala: %s\nHinta: %s\nKuvaus: %s",
- this.getTyyppi(),
- this.getOsoite(),
- r2.format(this.getPinta_ala()),
- r2.format(this.getHinta()) + " euroa",
- this.getKuvaus()
- );
- }
- }
- ```
-
- ------------------
-
- **AsuntoOhjelma.java**
-
- ```
- public class Song {
-
- private String title;
- private Artist artist;
- private int year;
- private int length;
-
- public String getTitle() {
- return this.title;
- }
-
- public void setTitle(String title) {
- this.title = title;
- }
-
- public Artist getArtist() {
- return this.artist;
- }
-
- public void setArtist(Artist artist) {
- this.artist = artist;
- }
-
- public int getYear() {
- return this.year;
- }
-
- public void setYear(int year) {
- this.year = year;
- }
-
- public int getLength() {
- return this.length;
- }
-
- public void setLength(int length) {
- this.length = length;
- //return this.length;
- }
-
- public String toString() {
- if (this.artist != null) {
- return this.title + " by " + this.artist;
- } else {
- return this.title;
- }
- }
-
- }
- ```
|