Hakemistoon

 

Mikä on Java?

Java on tietoverkkoihin suunnattu olio-ohjelmointikieli

C++:n pohjalta rakennettu lausekieli, jolle tyypillisiä piirteitä ovat mm. puhdas oliopohjaisuus, vahva tyypitys, C++:n syntaksi, automaattinen roskien keruu, osoittimien puuttuminen, tulkittavuus ja WWW-ohjelmointituki

Taustaa

Javan synnyn taustalla oli pienelektroniikan ohjelmisto tarve ja tähän liittyen loi James Gosling ohjelmointikielen nimeltä Oak (1991). Kehitystyö tapahtui Sun Microsystemsillä. World Wide Webin yleistyessä ryhdyttiin pienelektroniikan ohjelmistojen ajatusta siirtämään Internetinn soveltuvaksi ja vuonna 1994 syntyi javakieli, jonka pohjalla oli C++. Kielen nini "java" ei ole mikään kirjainlyhenne vaan perustuu erääseen kahvimerkin nimeen. Nimen etymologinen alkuperä löytyy siis Indonesian saaaristosta, jossa on saari nimeltä Jaava. Saaren nimi on alunaalkujaan Intiasta ja sanskriittia tarkoittaen "viljasaarta". Sana on kulkeutunut kantauralilaisen "jeva" sanan mukana myös suomenkieleen saaden täällä muodon "jyvä". Voidaankin siis leikkisästi sanoa, että Jyväskylä "Javaskylänä soveltuu hyvin Javakielen opetuspaikaksi, tosin muistaen, että "jyväs" tarkoitta aivan muuta.

JavaScript

Puolestaan on javan pohjalta kehitetty "helppokäyttöinen" oliokieli. Hyödyntää HTML-kieltä paremmin graafisten elementien luonnissa ja javalle ominainen vahva tyypitys puuttuu, kuten myös funktioiden määrittely..

Java ja C++

Java:

ei luokkien moniperiytyvyyttä

ei pointtereita

ei symbolisia vakioita

ei typedef-lausetta

ei bittikenttiä

ei funktioiden prototyyppejä

ei ylikuormitusta operaattoreille

ei struktureja ja unioneita

Java perustuu rakenteidensa puolesta kuitenkin C++:aan.

- Luokka ja ohjausrakenteet lainattu C++:sta.

- C++:n taulukkomekanismi on korvattu olioilla.

- Tyypit promitiivityyppejä (byte, int, long, short, float, double, char, boolean)

- Vähän varattuja sanoja

- Ei siis osoitintyyppejä (olioiden kohdalla noudatetaan viitesemantiikkaa)

Java-ohjelma (application)

class OmaOhjelmani {

public static void main(String[] args)

{

System.out.println("Hei maailma");

}

}

Sovelma (applet)

eli apletti eli toiminne eli sivusovellus eli sovelle

Välikielelle käännetty ohjelma, joka suoritetaan ko. www-selaimen välikielitulkilla Sovelmat eivät voi lukea tai kirjoittaa tiedostoja toisin kuin itsenäinen java-ohjelma. Sovelman suorittamiseen tarvitaan selain (esim. Netscape Navigator)


Esimerkki:

import java.awt.*;

import java.applet.*;

public class OmaSovelma extends Applet

{

public void init()

{

}

public void paint(Graphics g)

{

g.drawString("Hei maailma", 50, 50);

}

}

tai

import java.awt.*;

public class OmaSovelma extends java.applet.Applet

{

public void paint(Graphics g) {

g.drawString("Hei maailma", 50, 50);}

}

Java sovelman toteutus

Käännetään välikielelle komennolla javac

javac OmaSovelma.java

=> class-tiedosto: OmaSovelma.class

=> www-sivulle HTML:llä:

<html>

<head>

<title> OmaSivu <title>

<applet code = "OmaSovelma.class"

width = "50"

heighth = "50">

</applet>

</body>

</html>

 

 

 

 

 

 

Tietojenkäsittelytieteiden laitos, Informaatioteknologian tiedekunta, Jyväskylän yliopisto