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 unioneitaJava 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>