Konstanta

Iz MaFiRaWiki

Konstante v programskih jezikih navadno imenujemo spremenljivke, katerih vrednosti vnaprej določimo in za katere želimo, da se tekom programa ne spreminjajo. Navadno so definirane na začetku programa in jim kasneje ne moremo več spreminjati prirejene vrednosti za razliko od navadnih spremenljivk.

V programskih jezikih se uporabljajo različni načini definiranja konstant. Spodaj lahko vidimo primere, kako bi definirali konstanto za število π v nekaterih programskih jezikih.

Java

static final double PI = 3.14159;

Delphi

const Pi: Double = 3.14159;

C#

const double Pi = 3.14159;

Poimenovanje in dostop

Konstante so navadno poimenovane drugače kot ostale spremenljivke v programu, da se od njih lažje ločijo. V programskem jeziku Java so tako vse konstante poimenovane z velikimi črkami (nekatere poleg tega tudi z malimi), posamezne besede pa so med sabo ločene s podčrtajem. Do konstant navadno dostopamo preko razreda, kjer so deklarirane oz. kar z imenom konstante kadar jo uporabljamo v istem razredu kot je deklarirana.

Java

Math.PI          // konstanta π definirana v Javanskem razredu Math
Color.BLUE       // konstanta za modro barvo v razredu Color
Color.blue       // konstanta za modro barvo še z malimi črkami
BigInteger.ZERO  // konstanta za število 0 v razredu BigInteger
JOptionPane.INFORMATION_MESSAGE  // konstanta v razredu JOptionPane

Vrednosti

V konstantah se lahko hranijo vrednosti različnih podatkovnih tipov. Prav tako pri definiranju konstante ni potrebno da je le-ta zapisana kot fiksna vrednost ampak je lahko definirana tudi v obliki izraza. Pomembno je le, da je prevajalnik sposoben ovrednotiti izraz v času prevajanja programa. Nekaj primerov konstant v Javi.

Java

static final boolean STANJE = true;
static final int DESET = 10;
static final String IME = "Janez";
// tabela dnevov v tednu kot konstanta
static final String[] TEDEN = {"pon", "tor", "sre", "cet", "pet", "sob", "ned"};
// konstanta podana kot izraz
static final double PET_PLUS_KOREN2 = 5 + Math.sqrt(2);
// nove konstante se lahko nanašajo tudi na predhodno definirane
static final int A = 1;
static final int B = 2;
static final int C = A + B;
// pri deklaraciji konstante je dovoljeno klicati tudi konstruktor
static final Oseba JANEZ_NOVAK = new Oseba("Janez", "Novak");

Uporaba

Z uporabo konstant se poveča razumljivost programske kode in hkrati prepreči vsako kasnejše namerno ali nenamerno spreminjanje vrednosti, ki je shranjena v konstanti. Prav tako je kodo lažje vzdrževati, saj s spremembo vrednosti na enem mestu spremenimo obnašanje programa na vseh mestih, kjer je bila konstanta uporabljena.

Osebna orodja