OrdinadorsProgramació

Elements del model d'objectes de Java: una classe abstracta, una interfície

La idea principal de la classe abstracta està continguda en les següents tesis: de vegades no requereix classes de cuina, i en forma "humida". Tals espais en blanc no es poden usar directament (instanciar).

Què és una classe abstracta en Java

Considerem un altre exemple. Hi ha una classe abstracta de Java Calendari en el paquet java.util. No implementa un calendari específic, que s'utilitza, per exemple, a Europa Occidental i Oriental, Xina, Corea del Nord, Tailàndia, etc., però té moltes característiques útils, com ara l'addició d'uns pocs dies a una data específica: .. Es requereix que aquests funcions per una calendari d'aplicació. És impossible produir una còpia de la classe abstracta.

Les classes abstractes, els mètodes de Java abstractes

Suposeu que desitja desenvolupar múltiples elements gràfics, per exemple, formes geomètriques: .. Un cercle, rectangle, estel, etc., i hi ha un recipient que els atrau. Cada component de l'aparença és diferent, de manera que el mètode apropiat (fins i tot si es diu pintura) s'implementa de forma diferent. No obstant això, cada component té moltes similituds: .. La xifra ha de ser inclòs a la caixa poden tenir un color que sigui visible i invisible, etc. En altres paraules, cal crear una classe pare per a totes aquestes figures, on cada component s'hereten les propietats generals. Però què passa amb el mètode de pintura? Després de tot, la classe pare hi ha representació visual. Si es declara un mètode de pintura a cada classe de manera independent, caldrà analitzar quin component es processa, i després fer el repartiment. Per tant, el mètode ha de ser declarada resumeixen en la classe pare: el mètode estableix el títol sense un cos. Un cos de cada classe derivada descriurà la seva pròpia. En Java, una classe abstracta pot entrar en els mètodes abstractes.

Si una classe té mètodes abstractes, la classe és abstracta. Abans de posar la paraula classe abstracta la paraula clau, el títol del mètode - també. Després que el títol d'un mètode d'aquest tipus és necessari posar un punt i coma. En Java, una classe abstracta no pot produir còpies. Si volem prohibir la seva creació, fins i tot si no hi ha mètodes abstractes de la classe, la classe pot ser declarada abstracta. Però si la classe té almenys un mètode abstracte, la classe ha de ser abstracta. És impossible classe era i és abstracta, i última, i el mètode també. El mètode no pot ser abstracta, privat, estàtica, nativa. Subclasse es podria declarar no abstracta i creï una instància, han d'implementar tots els mètodes abstractes dels pares. La classe en si pot utilitzar els seus mètodes abstractes.

exemple:

  • classe abstracta Aclass {
  • mètode public abstract void (int a) ;
  • }
  • classe BClass estén Aclass {
  • mètode public void (int a) {
  • // cos
  • }

les variables es permeten com ara classe abstracta. Es pot fer referència a un nen no abstracta d'aquesta classe o ser nul.

Interfícies en Java - una alternativa a l'herència múltiple

En Java, no hi ha herència múltiple, perquè llavors hi ha certs problemes. Una classe no pot heretar de diverses classes. Però pot implementar múltiples interfícies.

interfícies Java i classes abstractes - els conceptes són similars, però no idèntics. La interfície pot ser declarat com a públic, llavors és accessible a tots, o es pot ometre el modificador pública, la interfície està disponible dins del seu paquet. No es requereix Resum de paraules clau, ja que la interfície i així és abstracte, però es pot especificar.

Una declaració d'interfície

Es comença amb una capçalera, i el primer pot anar a la paraula clau public, a continuació, - interfície de paraula. Llavors no pot haver-hi una paraula s'estén i les interfícies de transferència, de la qual hereten aquesta. No es permet a repetir, i és impossible formar una relació cíclica de la relació d'herència. Després ve el cos d'interfície, entre claus. En el cos dels elements de la interfície es declaren: constants de camp i mètodes abstractes. Tots els camps són estàtics public final - tots aquests modificadors no són necessaris. Tots els mètodes es consideren public abstract - aquests modificadors també es poden especificar. Ara, es diu prou sobre la diferència entre una classe abstracta de la interfície Java.

  • interfície pública AI s'estén B, C, D {
  • // cos
  • }

Per declarar una interfície hereva de classe, hagi d'utilitzar els implementos de paraules clau:

  • Aclass classe implementa BI, CI, DI {}

És a dir, si després de la declaració de la classe implementa nom de la interfície especificada, les seves eines de classe. Hereus d'aquesta classe té els seus elements, de manera que també venen.

També es permet Variables d'un tipus d'interfície. Poden referir-se a un tipus de la classe que implementa aquesta interfície, o nul. Aquestes variables tenen tots els elements de la classe d'objecte, perquè els objectes són generats per les classes, i que, al seu torn, es deriven de la classe Object.

En aquest article, discutim alguns elements del model d'objectes de Java - classes abstractes, mètodes d'interfície abstracta.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ca.atomiyme.com. Theme powered by WordPress.