Writing /home/infogasy/domains/wiki.infogasy.net/public_html/data/cache/5/50cb0212984f6927de5687f58d130056.xhtml failed

Andao indray Hiresaka Objet faha IX

Mikasika ny Interface

Inona indray ary ity Interface ity amin’ny Java ? Hum !!!

Aleo tonga dia handray fampiasana efa natao ary isika hiresahana kely ny momba azy ity.

Ndao ary hataontsika toa izao ilay kilasy Tahiry.java tary amin’ny lesona faha-5 iny

package resakaObjet
 
import java.io.* ;
 
public class Tahiry
{
private String toerana; // Toerana misy ilay fichier
private String anarana; // Anaran?ilay fichier
private File tondro; // fanondroana fichier iray fantatra ny toerana misy azy sy ny anarany 
 
public Tahiry(String toerana, String anarana) // Constructeur -n'ity kilasy ity
  {
         String s = toerana.concat("\\").concat(anarana); // fanondroana tanteraka  ilay fichier
         tondro = new File(s); // Objet File ilaina rehefa hanao E/S (mbola horesahina @ leson manaraka)
  }
 
}

Tsa mbola hasiantsika resaka aloha ny amin’ity File ity, fa amin’ny lesona faha-10 hiverenantsika ny aminy. Ny tiana havoitra fotsiny eto dia hoe tsy ho abstract mihitsy ity kilasy ity eto (toa ilay tary amin’ny lesona faha-5), satria voafaritra tsara daholo na ireo toetra na ireo hetsika ao anatiny (tsy misy afatsy constructeur aloha ny amin’io hetsika io eto e !)

Dia ahoana ary izany no fomba hatao raha ohatra ka tiantsika ny hametraka hetsika ahafahana manoratra sy mamaky ireo Objet voatahiry anaty fichier tondroin’ny toerana sy anarana isika ?

Isika aloha dia mbola tsy manana eritreritra mialoha hoe: karazana inona ilay tahiry eto ⇒ tsy maintsy izany isika mampiasa ny abstraction mba hanamora ny fampiasana ireo hetsika haorina ireo; izay mazava ho azy izany fa hatao anatina kilasy mitokana koa (satria mantsy efa nesorintsika tao anatin?ilay kilasy Tahiry izireo mba tsy ho abstract io kilasy io.

package resakaObjet
 
abstract public class TahiryES
 {
     abstract public void manoratraTahiry() ;
     abstract public Object mamakyTahiry(Object zavatra) ;
 }

Hita ary fa raha ampidirina anaty kilasy iray antsoina hoe TahiryES.java ireo hetsika aorintsika hanaovana ireo fampidirana sy famoahana zavatra anaty tahiry fichier ,dia lasa abstract ihany ilay kilasy satria abstract daholo ireo hetsika roa nofaritana.

Rehefa te-hampiasa ireo hetsika ireo izany isika dia tsy maintsy io hampifandraisintsika amin’ilay kilasy Tahiry.java afaka manondro ilay fichier; izay inoana koa fa efa manana eritreritra ny amin’ny hoe karazana inona ireo zavatra ho kirakiraina (soratra, bytecode, binaire, sns ?). Fantatsika tanteraka izany ny fomba fanao anatin?ireo hetsika, satria efa fantara eto ilay karazana fichier.

package resakaObjet
 
public class Tahiry extends TahiryES
{
private String toerana; // Toerana misy ilay fichier
private String anarana; // Anaran'ilay fichier
private File tondro; // fanondroana fichier iray fantatra ny toerana misy azy sy ny anarany 
 
   public Tahiry(String toerana, String anarana) // Constructeur -n?ity kilasy ity
     {
          String s = toerana.concat("\\").concat(anarana); // fanondroana tanteraka  ilay fichier
          tondro = new File(s); // Objet File ilaina rehefa hanao E/S (mbola horesahina @ leson manaraka)
     } 
 
   public void manoratraTahiry() // fanoratana  tanteraka ny fombafomba fanao raha hanoratra  anaty tahiry
     {
          ............. ;
     }
 
   public Object mamakyTahiry(Object zavatra) // Fombafomba fanao raha hamaky zavatra anaty tahiry
     {
          ............. ;
     }
}
 

Koa satria ary voafaritra mazava izay hataon?ireo hetsika roa tary amin’ny kilasy rainy TahiryES.java ato amin’ity kilasy lasa zanany ity, dia miala hoa azy koa izany ilay abstract ary afaka miasa tsara ny liaison dynamique rehefa mihodina ity kilasy Tahiry.java ity?

Ny fisehoan-zavatra hita ary dia : :

  • Ao amin’ilay kilasy TahiryES.java, abstract daholo ireo hetsika.
  • Asaina mandova azy io ilay Tahiry.java, ka tsy maintsy mamaritra tsara ao anatiny izay fanao anatin?ireo hetsika abstract ireo izy.
  • Ny tsininy fotsiny anefa dia rehefa mandova azy io ilay kilasy Tahiry.java, dia tsy afaka mandova kilasy hafa intsony (tsy ekena ny heritage multiple)

Dia izay no antony nametrahan ny interface, mba hanala io tsininy io:
Ny interface mira abstract daholo ny hetsika ary final na constante daholo ny attribut

package resakaObjet 
 
public interface TahiryES
{
      public void manoratraTahiry() ;
      public Object mamakyTahiry(Object zavatra) ;
}

Toy ny fanorenana kilasy ihany ny fanorenana azy, saingy ny tsara tadidiana fotsiny izany dia hoe:

  • interface fa tsy class no fanoratana azy
  • Toy ny fanoratana ny endrika hetsika abstract ihany, saingy tsy ilaina intsony ny manisy ilay abstract, satria efa fantatra fa abstract daholo ireo hetsika
  • Rehefa hampiasa azy ilay kilasy Tahiry.java eto dia implements fa tsy extends intsony no soratana:
package resakaObjet 
 
public class Tahiry implements  TahiryES
{
   private String toerana; // Toerana misy ilay fichier
   private String anarana; // Anaran'ilay fichier
   private File tondro; // fanondroana fichier iray fantatra ny toerana misy azy sy ny anarany
 
   public Tahiry(String toerana, String anarana) // Constructeur -n?ity kilasy ity
   {
         String s = toerana.concat("\\").concat(anarana); // fanondroana tanteraka  ilay fichier
         tondro = new File(s); // Objet File ilaina rehefa hanao E/S (mbola horesahina @ leson manaraka)
   } 
 
   public void manoratraTahiry() // fanoratana  tanteraka ny fombafomba fanao raha hanoratra  anaty tahiry
   {
         ............ ;
   }
 
   public Object mamakyTahiry(Object zavatra) // Fombafomba fanao raha hamaky zavatra anaty tahiry
   {
         ............ ;
   }
}

Hita ary fa ny ambiny dia tsy misy miova fa toy ilay tetsy ambony ihany ny amin’ny fanoratana manontolo ireo fomba fanao anatin?ireo hetsika roa ireo ao anatin?ilay kilasy Tahiry.java.

  • Ary ny tombony eto dia satria ny kilasy iray dia afaka mampiasa interface be dia be fa tsy tokana toy ny fandovana na heritage

Fanamarihana:

Ao anaty API n’ny JSE moa dia efa azo fantarina amin’ny Doc API ireo interface rehetra voafaritra manontolo amin’ireo kilasy rehetra misy ao; ka noho izany dia afaka sahady isika mampiasa ireo hetsika anaty interface, araka izay ilaina. Misy moa ny hetsika sasany izay voamarika ihany fa tsy maintsy ianao mampiasa azy no tokony hamaritra izay ao anatin?ireo hetsika voatondro; tsy dia maro anefa izireny, ary matoa misy dia satria manome fahafahana malalaka anao mpampiasa azy ihany no antony.

(Mbola hotohizana ihany?)

 

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