Класс Java getdata

#java

#java

Вопрос:

Я не могу найти проблему. Когда я использую класс и использую сначала setpostcode до 5000. и затем getURL я получаю еще 1000 в своем URL idk почему. при отладке почтовый индекс изменяется на 5000, но когда я печатаю URL-адрес, я получаю 1000.

 public class weer {

  private int  postcode = 1000;
  private String url = "http://www.meteo.be/services/widget/.?postcode="   postcode  "amp;nbDay=2amp;type=4amp;lang=nlamp;bgImageId=1amp;bgColor=567cd2amp;scrolChoice=0amp;colorTempMax=A5D6FFamp;colorTempMin=fffff";



public int getPostcode() {
    return postcode;
}

public void setPostcode(int postcode) {
    this.postcode = postcode;
}

public String getUrl() {
    return url;
}

public void setUrl(String url) {
    this.url = url;
}
 

}

    public static void main(String[] args) {
    weer w = new weer();
    w.setPostcode(5000);
    System.out.println(w.getPostcode());
    System.out.println(w.getUrl());

}
 

Комментарии:

1. Подсказка: пожалуйста, ознакомьтесь с соглашениями об именовании java. Классы идут в верхнем регистре, переменные идут в верблюжьем.

Ответ №1:

Переменная-член URL объявляется и инициализируется один раз при создании экземпляра класса. Он начинается с 1000 и никогда не меняется.

Обновления одного значения не отражаются на другом.

На самом деле вам не нужна переменная-член URL, если вы обновляете только почтовый индекс, просто измените получатель на

 return  "http://www.meteo.be/services/widget/.?postcode="   postcode  "amp;nbDay=2amp;type=4amp;lang=nlamp;bgImageId=1amp;bgColor=567cd2amp;scrolChoice=0amp;colorTempMax=A5D6FFamp;colorTempMin=fffff";
 

Или, если вам нужен параметр для URL-адреса, обновите другой параметр

 public void setPostcode(int postcode) {
    this.postcode = postcode;
    this.url = "http://www.meteo.be/services/widget/.?postcode="   postcode  "amp;nbDay=2amp;type=4amp;lang=nlamp;bgImageId=1amp;bgColor=567cd2amp;scrolChoice=0amp;colorTempMax=A5D6FFamp;colorTempMin=fffff";
}