网站建设资讯

NEWS

网站建设资讯

Java模拟动物叫声代码 动物叫声是语言吗

请问这个Java怎么调?

整体没啥问题,有几处需要改:

江永网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。成都创新互联公司成立与2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

1、类名好几处都是小写的,不知道你哪来的代码:

所有string需要改为String

Simulator simulator=new simulator();要改为Simulator simulator=new Simulator();

abstract class animal要改为abstract class Animal

2、另外还要改Simulator类:

class Simulator{

void playSound(Animal animal){

System.out.println("动物名称是:"+"动物.getAnimalName()");

System.out.println("动物叫声是:"+"动物.cry()");

}

}

有两处需要改:

要把"动物.getAnimalName()"改为:animal.getAnimalName()

System.out.println("动物叫声是:"+"动物.cry()");因为cry()方法时void的,所以需要改成这样:

System.out.print("动物叫声是:");

animal.cry();

也就是说Simulator类要整体改为:

class Simulator {

void playSound(Animal animal) {

System.out.println("动物名称是:" + animal.getAnimalName());

System.out.print("动物叫声是:");

animal.cry();

}

}

好了,可以运行了:

改完后的全部代码为:

public class JJ {

public static void main(String[] args) {

Simulator simulator = new Simulator();

simulator.playSound(new Dog());

simulator.playSound(new Cat());

}

}

abstract class Animal {

abstract void cry();

abstract String getAnimalName();

}

class Dog extends Animal {

void cry() {

System.out.println("汪汪...");

}

String getAnimalName() {

return "Dog";

}

}

class Cat extends Animal {

void cry() {

System.out.println("喵喵...");

}

String getAnimalName() {

return "Cat";

}

}

class Simulator {

void playSound(Animal animal) {

System.out.println("动物名称是:" + animal.getAnimalName());

System.out.print("动物叫声是:");

animal.cry();

}

}

代码老是挤在一起,我截几个图给你康康:

3-15行

16-35行

最后几行,注意这里的变化

1.设计一个动物声音“模拟器”java程序,希望所设计的模拟器可以模拟许多动物的叫

这是有一个很典型的关于java 面向对象 继承的使用 ,很简单 先创建一个如animal类,并有个makeVoice()方法,然后instance 这个类 ,如 bird rabit dog cat ect.下面就是继承后分别实现makeVoice() 方法!

Java编程:为每一种动物设计一个类,并添加一个能够播放动物声音的方法:void Sound()

抽象类Animal

public abstract interface Animal {

public void Sound();

}

实体类Cat

public class Cat implements Animal {

public void Sound(){

System.out.println("小猫叫:喵喵喵...");

}

}

实体类Dog

public class Dog implements Animal {

public void Sound() {

System.out.println("小狗叫:汪汪汪...");

}

}

测试类AnimalContainer

public class AnimalContainer {

public static void main(String[] args) {

Animal cat = new Cat();

Animal dog = new Dog();

AnimalContainer animalContainer = new AnimalContainer();

animalContainer.animalSpeak(cat);

animalContainer.animalSpeak(dog);

}

void animalSpeak(Animal animal){

animal.Sound();

}

}

JAVA的达人进 帮忙写个程序!!谢谢!!

抽象的Animal 类

public abstract class Animal {

public abstract void sound();

}

CanFly接口

public interface CanFly {

public void fly();

}

Bird类继承自Animal类,并有属性表示鸟类年龄。并实现父类中的sound方法

使鸟类实现接口Canfly,并实现其中的fly方法,在方法中向控制台打印输出:鸟在飞。。。

public class Bird extends Animal implements CanFly {

private int age;

@Override

public void sound() {

// TODO Auto-generated method stub

System.out.println("bird sound");

}

public void fly() {

// TODO Auto-generated method stub

System.out.println("鸟在飞。。。 ");

}

}

编写飞机类Plane,使飞机类实现接口Canfly,并实现其中的fly方法,在方法中向控制台打印输出:飞机在飞。。。

public class Plane implements CanFly {

public void fly() {

// TODO Auto-generated method stub

System.out.println("飞机在飞。。。 ");

}

}

编写测试类,测试类中有main方法,还有letFly方法,打印输出什么事物在飞方法头部为:public static void letFly(Canfly c)

还有letSound方法,打印输出什么动物在叫,在方法中要判断,这个对象是否是动物,如果是动物才让叫。方法头部为:public static void letSound(Animal a)

在main方法中创建鸟对象和飞机对象,在分别调用letFly和letSound方

public class Test {

public static void letFly(CanFly c)

{

c.fly();

}

public static void letSound(Animal a)

{

a.sound();

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

Bird b=new Bird();

Test.letFly(b);

Test.letSound(b);

Plane p=new Plane();

Test.letFly(p);

// Test.letSound(p);//飞机没有继承自Animal类所以不能调用该方法

}

}

以上全部按照你要求写的


网站题目:Java模拟动物叫声代码 动物叫声是语言吗
浏览地址:http://njwzjz.com/article/doojejo.html