【问题标题】:How to manipulate variables in deep class如何在深度类中操作变量
【发布时间】:2014-11-04 15:48:08
【问题描述】:

我刚开始学习 Java,我认为这是一个非常基本的问题,但我还没有找到正确的答案,所以我在这里尝试。

我只想在控制台中显示一些动物的名称和描述,但我不知道如何操作一个类中的变量。

我想我必须使用参数,但我不知道如何在类中使用它们...

我的“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();
    }
}

【问题讨论】:

  • 你有什么问题?
  • 另外,查看内部类。我不认为你应该在这里使用它们。
  • 您正在使用类嵌套,看起来您想使用继承。

标签: java class parameters nested-class


【解决方案1】:

试试这个:

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");
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-05
    • 1970-01-01
    • 2012-11-26
    相关资源
    最近更新 更多