Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3035 connectés 

 


Dernière réponse
Sujet : [JAVA] Java kesaco
darklord22

MarvinLeRouge a écrit a écrit :

Merci pour le site c'est vraiment super sympa :D  
 
PS : Si jamais tu as d'autres ites comme ca avec des bouquins complets online, je suis preneur :bounce:  




 
C'est à moi que tu parleS? Si oui quels aspects recherche tu particulièrement?


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
darklord22

MarvinLeRouge a écrit a écrit :

Merci pour le site c'est vraiment super sympa :D  
 
PS : Si jamais tu as d'autres ites comme ca avec des bouquins complets online, je suis preneur :bounce:  




 
C'est à moi que tu parleS? Si oui quels aspects recherche tu particulièrement?

MarvinLeRouge Merci pour le site c'est vraiment super sympa :D  
 
PS : Si jamais tu as d'autres ites comme ca avec des bouquins complets online, je suis preneur :bounce:
darklord22

slvn a écrit a écrit :

non je suis pas de chez sun :) j aimerais bien, on verra plus tard ;) mais en ce moment non :)
 
si tu cherche qq choses sur le C++, y a des tutorials sympa : celui de "christian casteyde" par ex, ou bien le bouqin qu on peu chopper sur le net: "think in c++"  




 
Slvn, en ce qui te concerne, Thinking in Java 2nd Edition est le livre qu'il te faut. DL sur www.BruceEckel.com
 
A+

veryfree merci!
slvn www.polymorphe.org /rubrik programmation, tu trouveras les bouqin en question ;)
veryfree t aurait pas une adresse de site plutot? please?
slvn non je suis pas de chez sun :) j aimerais bien, on verra plus tard ;) mais en ce moment non :)
 
si tu cherche qq choses sur le C++, y a des tutorials sympa : celui de "christian casteyde" par ex, ou bien le bouqin qu on peu chopper sur le net: "think in c++"
veryfree :hello:  
vous etes courageux les gars qd meme c 'est a se demandé si c pas un gars de chez sun qui se cache deriere slvn
mais juste une precision je crois que java c plus lent que le basic sans dec j aime bien ce language mais qu est ce que c long a se lancer
sinon je suis preneur d un site sur le c++ en francais j aimerait savoir faire tt ce que je sait faire en java en c++(socket fichier)
merci
slvn Yes ca marche :)) merci!!
darklord22 C'est parce que ton classpath n'est pas initialise. Le classpath est une variable d'environnement qui dit a la JVM ou elle doit chercher les classes.
 
mets toi dans le rep ou se trouve HelloWorld.java et tapes (en DOS)
 
set classpath=.
java HelloWorld
 
si tu es sous linux c pareil export ....
 
A+
slvn ok, d accord pour static :)
pour le bouqin, j ai trouvé le manuel de Jbuilder 3, et psui dautre choses, mais surment que je ferai mieux d achetter un bouqin !
 
 
sinon, pour l application : il "compile" bien, mais avec "java HelloWorld", j ai une erreur :
Exeception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
darklord22

slvn a écrit a écrit :

static, ca veut dire qeu ca ne s execute qu une seul fois ??
 
main= automatique ?!
 
 j ai un helloworld, qui n a ni main, ni static :( mais il marche    :??:  
 
 
import java.applet.Applet;
import java.awt.Graphics;
 
public class HelloWorld extends Applet  
{  
  public void paint(Graphics g)
    {
        g.drawString("Hello world!", 50, 25);
    }
}  




 
PDTR :D
Tu as pris juste l'example qu'il ne fallait pas. J'ai dit que main etait le point d'entree a quelque exception pres dont applet, servlet. Et ce code est le code d'une applet (je te passe les détails).  
 
Je crois que tu devrais lire un livre pour débutant sans vouloir te vexer parce que les efforts sont un peu désorientés ... Ca set à rien de comprendre à la 6-4-2.
 
Mais pour répondre à ta question, seul main est automatique car c'est le point d'entrée d'un prog java (pas applet ou autres)
 
----
 
Static c'est quoi ?
 
Suppose que tu veux définir un ensemble d'objets, par exemple des pommes. Et tu veux savoir combien il y en a. Si tu fais un champ static int appleCount = 0; voici ce qu'il va se passer.
 
Chaque isntance d'apple aura le MEME CHAMP appleCount car il est statique
 
statique = propre à la classe et le même pour chaque instance. C'est d'ailleurs pour ca que main est statique. Il ne doit pas y avoir plusieurs main différents EN MEME TEMPS pour un meme prog java ok (T'as pas 10 mains pour lanceer un prog C++ non plus).
 
Bref, si dans ton constructeur tu fais
 
public Apple()
{
       appleCount++;
}
 
Si tu fais  
 
Apple dummy = new Apple();
Apple other = new Apple();
Apple third = new Apple();
 
et bien dummy.appleCount vaudra 3, other.appleCount vaudra 3 et third.appleCount vaudra 3
 
C'est le même champ pour les 3 instances.
 
Compris ?
 
Le vrai hello world pour un programme Java est le suivant:
 
public class HelloWorld {
 
      public static void main(String args[])      
      {
            System.out.println("HEllo slvn !!!!" );
            System.out.println("I am a Java program" );
            System.exit(0);
      }
 
Sauve ca, enregistre le dans un fichier qui s'appelle HelloWorld.java (la casse est importante). Puis qd c fait tu fais
java HelloWorld (tu dois etre dans le rep ou tu as mis le fichier)
 
A+

slvn static, ca veut dire qeu ca ne s execute qu une seul fois ??
 
main= automatique ?!
 
 j ai un helloworld, qui n a ni main, ni static :( mais il marche    :??:  
 
 
import java.applet.Applet;
import java.awt.Graphics;
 
public class HelloWorld extends Applet  
{  
  public void paint(Graphics g)
    {
        g.drawString("Hello world!", 50, 25);
    }
}
darklord22

slvn a écrit a écrit :

Darklord22, voila ce qui me pose pb dna ston exemple :
dans la classe teste, tu crées une instance(un objet ?!) de la classe square (qui herite de la classe shape)
 
mais cette instance de square, n est crée que lorsque tu crée une instance de teste, et vu qu on ne crée pas d instance de teste; on ne crée pas d instance de square.  




 
Pour etre plus précis, nul besoin est d'executer une instance de la classe Test puisque la méthode main est statique (static). Cela signifie que tu peux l'exécuter sans créer une instance auparavant. Donc pas besoin d'avoir d'instance de test pour appeller sa fonction main
 
a+

darklord22

slvn a écrit a écrit :

Darklord22, voila ce qui me pose pb dna ston exemple :
dans la classe teste, tu crées une instance(un objet ?!) de la classe square (qui herite de la classe shape)
 
mais cette instance de square, n est crée que lorsque tu crée une instance de teste, et vu qu on ne crée pas d instance de teste; on ne crée pas d instance de square.  
( j ai sans doute pas capter le role de main, elle s exectue automatiquement ?!, on peut definir pluieurs main ?! aucune?!)  




 
C'est très simple en fait. Comme tu le sais main est le point d'entrée de tout programme (aussi bien en C++ qu'en Java a qque exceptions pres (appelet, servlet et compagnie). Bref.
 
Lorsque tu executes la Virtual Machine via la commande java, tu dois passer en paramètre le nom d'une classe. Cette classe doit comporter une classe main et est executée automatiquement par la jvm
 
Donc lorsque tu fais java Test 4
 
la jvm execute main de Test, qui instancie une instance de square avec 4 puisque args[0] = 4 dans ce cas ci. En c++ c'est différent (le nom de l'object ne fait pas partie des arguments en java).
 
Vala c++ clair comme ca?

slvn Darklord22, voila ce qui me pose pb dna ston exemple :
dans la classe teste, tu crées une instance(un objet ?!) de la classe square (qui herite de la classe shape)
 
mais cette instance de square, n est crée que lorsque tu crée une instance de teste, et vu qu on ne crée pas d instance de teste; on ne crée pas d instance de square.  
( j ai sans doute pas capter le role de main, elle s exectue automatiquement ?!, on peut definir pluieurs main ?! aucune?!)
darklord22

slvn a écrit a écrit :

alors qu en java (mais j ai suremnt mal compris ce passage) :
on declare des classes, mais on ne peut jamais créer d objet à partir de ces classes puisque y a pas de fonctions Main ??  




 
Hi hi :D
Mais il y a l'opérateur new en Java. Prend l'example très classique d'une forme (shape). Tu as une classe shape.java que tu définis sans fonction main(). Par contre tu définis un constructeru, du genre  
public shape()
{
  ....
}
 
ensuite tu définis un carré
 
public class square extends schape {
 
       private int cote = 0;
 
       public square (int cote)
       {
           this.cote = cote
       }
 
Je sais pas cmt on dit cote en anglais :D
 
Bon bref, toujours pas de main. Maintenant tu as ta classe principel qui va créer un carré, genre Test
 
public class Test {
 
        public static void main(String args[])
        {
              Square MonCarre = new Square(args[0]);
        }
 
Si tu fais java Test 4
 
Tu crées une INSTANCE de la classe carré avec 4 de coté.
 
C'est clair ?

slvn mince je me suis mal exprimé :) je sais commet faire de l heritage avec des classes, du moins en C++.
 
mon pb, vient du fait que je captes pas comment le java fonction,  
en C++: on a une fonction main, des classes, et dnas la fonction main, on cree des "objets" a partir des classes, et hop le programme devient qq chose avec des objets qu on peux utiliser !
 
alors qu en java (mais j ai suremnt mal compris ce passage) :
on declare des classes, mais on ne peut jamais créer d objet à partir de ces classes puisque y a pas de fonctions Main ??
MarvinLeRouge Si tu veux montrer un héritage dans ta classe, ca ne se passe pas au niveau d'une fonction ,mais à celui de la classe.
 
class MaClasseAMoi extends SaClasseAlui
{
blablabla
.....
....
}
slvn euh pas tout capté : dnas mon fichier je declare que des classes ..  mais il y a bien une classe "mere", et là, il faudrait l instancier ?! mais je peux pas car y a pas de fonction main ?!
 
(la classe applet, elle est où ??)
LeGreg

slvn a écrit a écrit :

import java.applet.Applet;
import java.awt.Graphics;
tout vas bien, mis a part que je capte pas trop le "type" de programmation : y a que des classes, mais pas de fonctions main commen en C ??  




 
oui il n'y a que des classes
par contre il y a bien une methode
main static
qui est heritee de ta classe applet !
 
A+
LEGREG

slvn oky merci, j etacherais de toruver login chez mon marchand de journaux :)
j ai finallement choppé le logiciel de sun   (jdk, avec java et javac pour compiler..;)
 
j ai aussi trouver le celebre hello world dont voici le code :
 
import java.applet.Applet;
import java.awt.Graphics;
 
public class HelloWorld extends Applet  
{  
  public void paint(Graphics g)
    {
        g.drawString("Hello world!", 50, 25);
    }
}
 
 
tout vas bien, mis a part que je capte pas trop le "type" de programmation : y a que des classes, mais pas de fonctions main commen en C ??

 

[edtdd]--Message édité par slvn--[/edtdd]

thaodalf utilise FORTE c'est un log fait par sun lui meme
il est tres bien.
LOGIN a sorti un hors serie speciale java il y a 1 mois
tres bien fait en +
tu encore pouvoir le touver
slvn Jborland c est gratuit, mais c est bien ??  .....Ca me parait un peu compliqué ?!
 
(ps : comment on fait pour que l applet s execute dnas une page web?!)
slvn merci beaucoup thaodalf, je vais trouver mon bonheur dnas ces documents :)
thaodalf pour faire ton premier prog
http://www-inf.enst.fr/~charon/coursJava/
c'est un cours sympa
http://www5conf.inria.fr/fich_html [...] erview.htm
celui ci est fait par l'inria
slvn euh....concretement , pour faire mon premier    "hello world" en java, je fais comment ?!
MarvinLeRouge Syntaxiquement, ca ressemble à du C.
 
Sinon il n'y a pas de pointeurs (du moins pas sous forme directe) donc avant d'aller taper n'importe ou en mémoire tu te coupes quelque chose et tu t'en fais un collier, le tout sur une jambe en chantant Aïda sans fausse note.
 
Point de vue rapidité ca dépend.
 
Et pour ce qui est d'une applet, comme elle est chargée sur la machine client avant l'exécution, si le type est assez futé pour trouver sous quel nom temporaire tordu elle se planque, il en fait une copie puis la décompile et il a tout gagné.
 
Pour les navigateurs, il me semble que Win XP n'intègre pas d'interpréteur Java de base, qu'il faut en télécharger un.
slvn une petite question, je viens de chopper un jeu en java..un demineur ;)
 
a premiere vu ca ressemble a du C++ ?!
 
qq question :  est ce rapide ?!  ( moins que le C et plus que le basic, je suppose ?!)
 
quand qq un utilise un applet stocké sur un serveur, il peut voir le code source de l applet qu il utilise ??
 
y a t il des problemens avev les navigateurs ??
slvn c vrai qeu darklord, il se la péte ;)  avec ses ptit 850 messages (; (;
j ai rien mis sur les pointeurs, variables, threads, etc.... car a priori je connait deja :) du moins en c/c++ ....
 
je voulais juste qq infos sur le java, j ai eu les principales pour l utilisation :)
mias pour me lancer, je sais pas comment trouver un "pseudo compilateur" et un "interpreteur" pour les tester chez moi....
et puis il me faudrait aussi un bref tutorial, enfin si qq un a sa sous la main,
MarvinLeRouge Darklord > Tu es mesquin : ca concerne bien la programmation, même si ce n'est pas bourré de gros mots comme pointeur, variable et thread :p  
 
Sinon il me semble bien qu'on peut sécuriser un minimum ses sources puisque je suis déjà tombé sur des .class qui ne voulaient pas se laisser décompiler et je me prenais un message de sécurité du genre : va voir ailleurs ca ne te regarde pas :o
darklord22

slvn a écrit a écrit :

lol :)
non j ai capté :)  
c est un bon compromis c vrai :) enfin si le code generé permet quand meme de ne pas avoir acces aux sources comprehensibles :)  




 
Et non! On sait avoir accès au sources comme on veut.
Sinon, va sur bla bla pour ton topic, c'est plus approprié :D

slvn lol :)
non j ai capté :)  
c est un bon compromis c vrai :) enfin si le code generé permet quand meme de ne pas avoir acces aux sources comprehensibles :)
MarvinLeRouge Ah la question qui tue je me gausse d'avance :lol:  
 
La réponse est : ca se compile ET ca s'interprète. Bon alors là logiquement tu fais :crazy:  :pt1cable:  
 
Bon explication : quand tu crées ton source après tu le compiles et ca crée du pseudo-code (bytecode) qui est un truc de chez Sun. Et quand le bytecode est lancé sur une machine, la machine virtuelle Java installée interprète ce bytecode afin de le traduire dans le langage de cette machine, d'où la portabilité du Java :D  
 
Alors, mal à la tête :ouch:
slvn yess, merci :) je commence a voir!
 
une petit pour la route : ca se compile ?! ca se teste en local facilement sous win? sous linux ?
MarvinLeRouge C'est un langage de programmation généraliste, orienté objet, qui permet, entre autres, de faire ce qu'on appelle des applets. Ce sont de petits programmes inclus dans des pages web qui s'exécutent sur le client.
 
Et pour ce qui est de la programmation généraliste, comme son nom l'indique, ca permet de faire de tout : du côté client, du côté serveur, de la communication client serveur, de la gestion réseau, du graphisme ou compter les poils de tete de iench si ca t'amuse mais ca j'ai jamais essayé :D  
 
Sinon www.javasoft.com est effectivement un super site sur le sujet, aussi bien pour les novices que pour les développeurs acharnés (ah les discussions à bâtons rompus sur la Java Cryptography Extension :bounce: )
slvn ou ca n importe quoi ??......si justment je cherche des infos sur HFR, c pas pour me tapper tout le site de sun en long et en travers (et en anglais)....ca viendra surment mais plutard:)
petoulachi www.java.sun.com ça t'evitera de dire n'imp' ...
slvn ca permet de creer une application qui tourne sur un client ?!....mais encore ?!
 
ca se compile je crois, on peux communiquer avec un programme sur un serveur ?!
le java, ca se fait avec du notepad, ou y a un logiciel ??
et puis, est il possible de tester le java en local ?!
.....et sinon, c bien c nul ??
 
bref, toute remarque interessant est bienvenue ;)

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)