Writing /home/infogasy/domains/wiki.infogasy.net/public_html/data/cache/a/aa9c1e499c160ee92d90f6dba6d71f86.xhtml failed

Andao hiresaka Objet indray IV

Ny fonosana mpitahiry Classe na : package sy ny fampiasana azireo na import

Dia tohizantsika ihany ary ny resaka Objet amin’ny tontolo Java :

Fanamarihana mialoha : Amin’ny tontolo Java moa dia tsara ho fantantsika fa mifantoka tanteraka amin’ny Objet ny fomba fiantrehana asa rehetra ⇒ Ny zavatra rehetra na inona na inona kirakiraina zany dia tokony faritana amin’ny modely Objet daholo (tsy misy ankanavaka io an !!!?).

Raha iverenana kely ary ilay andrana komandy java ZavatraAzoKajiana tary amin?ny andinina faharoa tary dia hitantsika fa namoaka laza diso hoe : java.lang.NoSuchMethodError : main, ny milina virtoaly Java JVM, raha mbola tsy nofaritantsika ilay hetsika na methode static main(String args[])

Raha fotorintsika akaiky io laza diso nivoaka io dia izao no azo ambara :
java.lang. dia azo heverina hoe fanondroana lalana ny JVM, fa ato ilay classe atao foto-dresaka
NoSuchMethodError dia tsy inona fa anaran’ilay classe amin’io ohatra io.

Koa satria Objet daholo ny zava-kirakiraina amin’ny Java.

Raha halalinina akaiky zany dia azo adika koa izay fa ny classe antsoina hoe : NoSuchMethodError, dia voatahiry ao amin’ny toerana iray voatondron’ny : java.lang. . Io toerana fitehirizana classe io no atao hoe : package. Io java.lang. io no atao hoe : package par defaut ary tsy mila tondroina mazava ao anaty vainga classe Java foroninao raha toa vafono ao daholo ireo classe ilaina hamoronanao Objet hampiasainao, amin’izay ho ataonao rehetra.

Ho an’ny mpilalao systeme de fichier dia azo adika avy hatrany io soratra java.lang. io ho toy ny repertoire iray atao hoe : java/lang/ : zany hoe soloina /(slash) fotsiny ny .(point) e !.

Tena izay tokotrany ilay izy satria raha ohatra raisintsika amin’ilay ohatra classe ZavatraAzoKajiana tary amboalohany tary dia andao anie handramantsika, hovaina toy izao io classe io :

package resakaObjet;
 
  public class ZavatraAzoKajiana
  {
    private Object sanda; // toetran?ilay objet
 
    public ZavatraAzoKajiana(Object sandaHafa)
    {
       sanda = sandaHafa;
    } // famoronana objet iray, na constructeur no fiantso azy.
             ...............
  }

Dia mariho ao amin’ny systeme de fichier iasanao ary hoe:

1. Teo amin’ny ohatra voalohany (tsy nisy ilay hoe: package resakaObjet)

  • aiza ilay fichier ZavatraAzoKajiana.java no napetrakao.
  • dia aiza ilay fichier ZavatraAzoKajiana.class (bytecode) no voarakitra rehefa vita ny compilation_nao

2. Eto amin’ny faharoa ity (misy ilay hoe : package resakaObjet)

  • aiza indray ireo fichier roa tetsy ambony ireo zao

Fanazavana :

Hita ary fa amin’ilay voalohany dia mitovy ny toerana nipetrahan’ny ZavatraAzoKajiana.java sy ny ZavatraAzoKajiana.class noforoninao; fa amin’ilay faharoa kosa dia nisy repertoire antsoina hoe resakaObjet niforona teo ambanin?ny toerana misy ilay ZavatraAzoKajiana.java, ary dia napetraky ny compilateur tao amin’io repertoire io ilay ZavatraAzoKajiana.class na ilay bytecode-nao izany. Izany hoe izay classe rehetra asianao io package resakaObjet ao amboalohan’ilay source io dia ho voatahiry ao amin’io repertoire resakaObjet io daholo ny bytecode voa-compile. Toa izany ary ny mikasika io package io.

Raha ohatra indray ary ka tiantsika hampiasaina amin?ny classe aorintsika vaovao, ny Objet iray na maro naorina avy amin’ireo classe izay voatahiry anaty package (na repertoire ihany io e !); dia ahoana no fika ?

Eto dia tsotra be ilay izy fa mitovy tsy misy valaka amin’ny fomba fitadiavana fichier iray ao anatin’ny systeme de repertoire ihany. Ary ny soratra tsy maintsy apetrakao alohan’ny hampiasainao azy dia ny hoe : import <ilay package> dia vita kabary fa afaka mampiasa tsara ireo classe hafa voatahiry anaty package ireo ianao amin?ilay classe tianao haorina vaovao.

Andao ary hanao andrana avy hatrany isika e !

Raha ilay ohatra farany misy ilay package resakaObjet zany no compiler-nao ka tsy misy laza diso ny javac ZavatraAzoKajiana.java, ataonao, dia ito misy classe vaovao haorintsika dia ho hita eo indray izay ho hataon’ingahy JVM.

import resakaObjet.ZavatraAzoKajiana;
public class AndranaHafa
{
    Object zavatra;
    
    public AndranaHafa(Object param) // Constructeur voalohany
    {
      ZavatraAzoKajiana kajyZavatra = new ZavatraAzoKajiana (new String());
      zavatra = kajyZavatra.kajyAdisanina((String)param);
    }                                                                    
    
    public AndranaHafa(Object param1, Object param2) // Constructeur faharoa
    {
      ZavatraAzoKajiana kajyZavatra = new ZavatraAzoKajiana ((String)param1);
      zavatra = kajyZavatra.kajyAdisanina((String)param2);
    }
    
    /** Ity methode toString() ity dia manitsaka na misolo avy hatrany ilay
  * voafaritra ao anaty package par defaut an?ny Java
  */
    
    public String toString()
    {
      return (String) zavatra;
    }                              
    
    static public void main(String arg[[]])
    {
      AndranaHafa ohatra1 = new AndranaHafa("Ndao hiresaka Objet ary e !");
      AndranaHafa ohatra2 = new AndranaHafa(?Hevitra voalohany ?\n?,
      ?Hevitra faharoa ??);
      System.out.println("AndranHafa \"ohatra1\" => " + ohatra1);
      System.out.println("AndranHafa \"ohatra2\" => " + ohatra2);
    }
}

Fanazavana tsotra aloha:

Ataontsika fohy ihany ilay classe vaovao, fa tsy hasiantsika ireo getters sy setters (toy ilay getSanda() sy setSanda(Object obj) tary amin?ny [lesona II] an !)

Fa kosa :

  • Ataontsika maro ireo constructeur azo anorenana Objet ?n?io classe AndranaHafa io
  • hasiantsika hetsika na methode iray antsoina hoe toString(), ka mamerina String io ary public ny fampiasana azy.

Ka ny asaintsika hataon’ilay main(?) eto dia manorina fotsiny Objet roa antsoina hoe ohatra1 si ohatra2 amin’io classe AndranaHafa io, dia avy eo avoaka amin?ny ecran izireo.

Dia avoaka etsy ambany ny vokatra azo eny amin?ny ecran:

AndranaHafa ohatra1 => ndao hiresaka Objet ary e !
AndranaHafa ohatra2 :
Hevitra voalohany
Hevitra faharoa

(Mbola hitohy ?)


Lahatsoratra Java

 

andaohiresakaobjetfahaiv.txt · Novaina farany:: 2008/09/11 12:43