| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> Java programmering >> Content
    Hvordan man opbygger din egen Solar System i Java
    Modeling et solsystem i Java , udover at være sjovt, er en god øvelse til at illustrere og praktisere tænke i nogle grundlæggende begreber i objektorienteret design ( OOD ) , især arve-og polymorfi . Du kan lære OOD begreber med en simpel bygge -din-egen solsystem model. Hvad du har brug
    Computer
    Java Software Development Kit ( SDK)
    tekst editor eller Java Integrated Development Environment (IDE)
    Vis Flere Instruktioner
    1 < br > 2.

    Opret GravityObject abstrakt klasse . Du ønsker at oprette din GravityObject som en abstrakt klasse. Om en klasse til at være abstrakt i Java viser den compiler , at vi ønsker denne klasse til at fungere som en model, der anvendes af andre klasser, men klassen bør ikke skabes selv. Det giver mening for solsystemet eksempel: der er ikke sådan noget som en " GravityObject " , men der er ting som planeter og stjerner , der er objekter, der har og er påvirket af tyngdekraften . Du skal kun skrive programmeringen for det én gang. I objektorienteret design , er dette træk kaldes Inheritance

    Type dette i din GravityObject fil : Hej

    offentlig abstrakte klasse GravityObject { double xPosition , dobbelt yPosition , dobbelt degreeInOrbit , dobbelt distanceFromParent ;
    .

    GravityObject () { this.distance = 0; }

    GravityObject (dobbelt afstand) { this.distance = afstand ;}}
    p Dette er et simpelt eksempel , så du kun bruge x og y positionerne af objektet , sammen med afstanden fra dets forælder og en grad variabel . Du kan senere oprette en anden abstrakt klasse , 3DGravityObject eller RelativisticGravityObject og har det arver fra dette objekt. Dette vil tillade dig at tilføje detaljerne for ting, der ændrer sig.
    3

    oprette OrbitalSystem abstrakte klasse . Denne klasse vil også være abstrakt , men vil være mere sofistikerede end GravityObject klassen

    import java.util.ArrayList ; .

    Offentlig abstrakte klasse OrbitalSystem udvider GravityObject { private ArrayList børn = new ArrayList ( ) //objekter i systemet. De vil kredser den forælder

    public void add ( GravityObject barn ) { children.add ( barn );} .

    Public void kryds () { for (int x = 0; x < children.size (); x + +) { GravityObject strøm = children.get (x ), current.degree + = 1current.xPosition = this.xPosition + Math.cos ( degree/180 * Math.PI ) * current.distance ; strøm . yPosition = this.yPosition - Math.sin ( degree/180 * Math.PI ) * current.distance ;} ( se referencer 2 )

    }}

    klassen udvider GravityObject klasse . Den ArrayList besidder alle GravityObjects og erklærede sin variable private , så du kan tvinge andre klasser til at bruge add -funktion, der sikrer, at det kun GravityObjects kan føjes til array . Dette illustrerer to andre vigtige OOD begreber udover arv. Den første er data skjul : ved at forsegle den væk , har du sikret, at andre dele af programmet ikke kan få adgang til det og sætte ugyldige oplysninger i den. Den anden er polymorfisme , som giver os mulighed for at henvise til et objekt ved hjælp af ikke blot sine egne navne, men navnene på nogen af ​​sine forfædre. Dette giver mulighed for en stor fleksibilitet i at skrive kode .
    4

    Skriv planet og stjerne klasser. Da det meste af arbejdet er blevet gjort i den abstrakte OrbitalSystem og GravityObject klasser , vil Planet og Star klasser være enkle

    offentlig class Star udvider OrbitalSystem { }; .

    Og
    < p> public class Planet udvider GravityObject { };
    5

    Skriv vigtigste klasse . Din primære funktion skal se ud som følgende:

    offentlige statiske int main ( String [] args ) { stjerne s = new Star ( ) //Opret en ny star.s.add (ny Planet ( 20) ) //Tilføj en planet til stjernens orbital system, der kredser i en afstand af 20 units.s.add (ny planet ( 66) ) //Tilføj en anden planet til stjernens orbital system, der kredser i en afstand af 66 enheder .

    while ( true) { s.tick ( );}

    }

    Dette vil skabe en stjerne og to kredsende planeter og vil sætte dem i bevægelse < . br >

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan tilføjes en server overslag Eclipse 
    ·Sådan Luk et MQ -forbindelse fra Java 
    ·Sådan ændres Package Name i Eclipse 
    ·Java Naming Begrænsninger 
    ·Hvordan man kompilerer i Java 
    ·Sådan aktiveres Påstande i Eclipse 
    ·Sådan aktiveres Java Client for Windows XP 
    ·Hvordan man laver en proxy i Java 
    ·Sådan fjernes Undergravende på Eclipse 
    ·Sådan Code Java Boxes 
      Anbefalede Artikler
    ·Sådan får du adgang Windows sikkerhedsindstillinger v…
    ·Sådan udføres en Record Søg i en Java Application 
    ·Sådan ændres billeder i Visual Basic 
    ·Sådan bruges AppleScript til at iværksætte programme…
    ·Sådan Upload & FTP en fil med PHP 
    ·Sådan oprettes PHP Aliasing til en URL med Plesk 
    ·Sådan tænke en programmør 
    ·Skjulte Input farer med PHP 
    ·Sådan tilføjes en anonym proxy til en PHP Script 
    ·Sådan får du en valgt værdi fra en Listbox i C 
    Copyright © Computer Viden http://www.computerdk.com