2014-11-04 1 views
-1

방금 ​​자바를 배우기 시작했고,이 질문을 아주 기본적인 질문이라고 생각합니다. 그러나 나는 올바른 대답을 아직 찾지 못했고 여기에서 시도합니다.깊은 클래스에서 변수를 조작하는 방법

나는 단지 내 동물의 이름과 설명을 내 콘솔에 보여주고 싶지만 클래스의 클래스에서 변수를 조작하는 방법을 모른다.

내가 ... 내가 매개 변수를 사용해야하지만 난 클래스에서 사용하는 방법을 찾을 수없는 것 같아요

내 "Animal.java"

public class Animal { 
    private String nom; 
    public static String DESCRIPTION; 

    public String toString(){ 
     return "Je suis " + this.nom; 
    } 

    public void direNom(){ 
     System.out.println(toString()); 
    } 

    public void direDESCRIPTION(){ 
     System.out.println("Description: " + this.DESCRIPTION); 
    } 

    public String getNom(){ 
     return nom; 
    } 

    public void setNom(String nom){ 
     this.nom = nom; 
    } 

    class Vertebre{ 
     int nbrVertebre; 

     class Mammifere{ 

      class Ours{ 
       String nom = "Poumba"; 
       String DESCRIPTION = "Description de Poumba"; 
      } 

      class Chimpanze{ 
       String nom = "Cheeta"; 
       String DESCRIPTION = "Description de Cheeta"; 
      } 

      class Rats{ 
       String nom = "Ratata"; 
       String DESCRIPTION = "Description de Ratata"; 
      } 

     } 

     class Poisson{ 

      class Requins{ 
       String nom = "Jaws"; 
       String DESCRIPTION = "Description de Jaws"; 
      } 

      class Raies{ 
       String nom = "Raimonta"; 
       String DESCRIPTION = "Description de Raimonta"; 
      } 

      class Truites{ 
       String nom = "Truita"; 
       String DESCRIPTION = "Description de Truita"; 
      } 

     } 

     class Reptile{ 

      class Tortue{ 
       String nom = "Tortega"; 
       String DESCRIPTION = "Description de Tortega"; 
      } 

      class Serpent{ 
       String nom = "Serpento"; 
       String DESCRIPTION = "Description de Serpento"; 
      } 
     } 
    } 
} 

내 "TestZoo.java"

public class TestZoo { 
    public static void main(String[] args){ 

     Animal unAnimal = new Animal(); 

     unAnimal.setNom("Jaws"); 
     unAnimal.direNom(); 
     unAnimal.direDESCRIPTION(); 


     unAnimal.setNom("Cheeta"); 
     unAnimal.direNom(); 
     unAnimal.direDESCRIPTION(); 


     unAnimal.setNom("Ham"); 
     unAnimal.direNom(); 
     unAnimal.direDESCRIPTION(); 
    } 
} 
+0

무엇의 WRO을 네가 가진 것과? –

+1

또한 _inner 클래스를 살펴보십시오. 나는 당신이 여기 그들을 사용해야한다고 생각하지 않습니다. –

+2

상속을 대신 사용하려는 클래스 중첩을 사용하고 있습니다. –

답변

0

이 시도 :

import java.util.*; 
import java.lang.*; 
import java.io.*; 
class Ideone{ 

    public static void main(String []args){ 
     Ours poumba = new Ours(); 
     poumba.direNom(); 
    } 
} 

class Animal { 
    protected String nom; 

    public String toString(){ 
     return "Je suis " + this.nom + ", je suis un " + this.getClass(); 
    } 

    public void direNom(){ 
     System.out.println(toString()); 
    } 

    public String getNom(){ 
     return nom; 
    } 

    public void setNom(String nom){ 
     this.nom = nom; 
    } 

} 

class Vertebre extends Animal { 
    int nbrVertebre; 
} 

class Mammifere extends Vertebre {} 

class Ours extends Mammifere { 
    public Ours(){ 
     this.setNom("Poumba"); 
    } 
} 
관련 문제