「java动物特征」JAVA动物类

博主:adminadmin 2022-12-23 04:21:08 82

今天给各位分享java动物特征的知识,其中也会对JAVA动物类进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java代码编写,实现《动物特性的面向对象描述》

呵呵,这个太简单了。

声明一个基类,叫动物。动物有三个属性:陆生、哺乳的、肉食性

声明一个子类,叫狗,继承动物,该类有自己的方法,分别是摇尾巴、叫、呜呜

以此类推,再声明一个子类猫。

青蛙类的定义有些麻烦,需要先定义接口,接口中描述水生动物,卵生。青蛙类继承动物类,同时实现接口,自己的方法分别是:呱呱呱和扑通跳入水中

JAVA动物特性报告

public class Animal {

public String name ="";

public Animal(String name){

this.name = name;

}

public void move(){

System.out.println(name+"移动了");

}

}

public interface Mammalia {

//哺乳动物接口

public void suckle();

}

public interface Predator {

//食肉动物接口

public void eat(Animal animal);

}

public class Dog extends Animal implements Predator,Mammalia{

public Dog(String str){

super(str);

}

@Override

public void eat(Animal animal) {

System.out.println(this.name+"吃了"+animal.name);

}

@Override

public void suckle() {

System.out.println(this.name+"给小"+this.name+"喂奶");

}

public static void main(String args[]){

Dog dog = new Dog("狗");

dog.move();

dog.suckle();

Animal a = new Animal("兔子");

dog.eat(a);

}

}

java中动物特性的面向对象描述

具体的对象:猫、狗、青蛙。关系:都属于动物,猫和狗属于陆生动物,青蛙属于水生。

所以应该有6个类:

动物、陆生动物、水生动物、猫、狗、青蛙。

陆生动物、水生动物继承动物类 ;猫、狗继承陆生动物类;青蛙继承水生动物类。

下面是代码

/**

* 动物抽象类

*

* @author haisheng

*

*/

public abstract class Animal {

public String creattype;//类别(哺乳、卵生)

public String eattype;//类别(肉食、杂食)

/**

* 正常行为

*/

public abstract void nomalAct();

/**

* 收到惊吓的行为

*/

public abstract void scaredAct();

}

/**

* 陆地动物

* @author haisheng

*

*/

public abstract class AnimalLand extends Animal{

/**

* 打招呼

*/

public abstract void hello();

/**

* 发声音

*/

protected void voice(String str){

System.out.println(str);

}

}

/**

* 水生动物

* @author haisheng

*

*/

public abstract class AnimalWater extends Animal{

}

/**

* 猫

* @author haisheng

*

*/

public class Cat extends AnimalLand {

public Cat() {

this.creattype="哺乳类";

this.eattype="肉食类";

}

@Override

public void nomalAct() {

voice("咕噜咕噜");

}

@Override

public void scaredAct() {

voice("嘶嘶");

}

@Override

public void hello() {

voice("喵~");

}

}

/**

* 狗

* @author xhaisheng@126.com

*

*/

public class Dog extends AnimalLand {

public Dog() {

this.creattype="哺乳类";

this.eattype="肉食类";

}

/**

* 摇尾巴

*/

public void wagTail(){

System.out.println("摇尾巴了");

}

@Override

public void nomalAct() {

voice("旺旺叫");

}

@Override

public void scaredAct() {

voice("呜呜");

}

@Override

public void hello() {

wagTail();

}

}

/**

* 青蛙

* @author haisheng

*

*/

public class Frog extends AnimalWater {

public Frog() {

this.creattype="卵生";

}

@Override

public void nomalAct() {

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

}

@Override

public void scaredAct() {

System.out.println("跳水了");

}

}

说明:AnimalWater类是个空的类没什么属性和方法,这个是便于系统以后扩展用的

java设计一个动物类,包括动物的基本属性。例如名称,大小,重量等,并设计相应的动作例如跑,跳,走等。

/**

* Animal.java

*/

package animal;

public class Animal {

private String name; //名称

private int bodySize; //大小

private float weight; //体重

public Animal (String name, int bodySize, float weight) {

this.name = name;

this.bodySize = bodySize;

this.weight = weight;

}

public void run () { //跑

System.out.println("I'm running!");

}

public void jump () { //跳

System.out.println("I'm jumping!");

}

public void walk () { //走

System.out.println("I'm walking!");

}

public String getName () {

return name;

}

public int getBodySize () {

return bodySize;

}

public int getWeight () {

return weight;

}

public String toString () {

return ("I'm a " + name +

", my body size is " + bodySize +

", and my weight is " + weight + ".");

}

}

/**

* 这是一个测试类: TestAnimal.java

*/

package animal;

public class TestAnimal {

public static void main (String args[]) {

Animal ani = new Animal("tiger", 5, 10.5);

System.out.println(ani.toString());

ani.run();

ani.jump();

ani.walk();

}

}

------------------------------------

输出:

I'm a tiger, my body size is 5, my weight is 10.5.

I'm running!

I'm jumping!

I'm walking!

------------------------------------

不会测试就不测试呗,我输出都帮你写出来了。

------------------------------------

测试结果就是上面的内容。把以上两个程序保存成 Animal.java 和 TestAnimal.java。放入一个新建名为 animal 的文件夹。比如路径是 C:\animal\,运行 cmd,输入:cd\ 回车,

再输入:C: 回车,

然后输入:javac animal\Animal.java animal\TestAnimal.java 回车,

如果没有什么错误提示,再输入:java animal.TestAnimal 回车。

---------------就可以了!

java动物特性的面向对象描述 项目

定义LandAnimal接口和WaterAnimal接口 ,只定义个接口好定义,只是你的题目用不到啊。(没水生和陆生啊)

下面是定义的ANIMAL类,实现了他们共有的属性。CAT,FROG没说出来啊,自己定义吧。

public class ANIMAL {

public String name;

public boolean mammal; // 哺乳动物

public boolean carnivorous;// 肉食动物

public String mood;

public int logs;

public void setName(String name) {

this.name = name;

}

public void setMammal(boolean mammal) {

if (mammal) {

System.out.println(name + "是哺乳动物");

} else {

System.out.println(name + "不是哺乳动物");

}

}

public void setCarnivorous(boolean carnivorous) {

if (carnivorous) {

System.out.println(name + "是肉食动物");

} else {

System.out.println(name + "不是肉食动物");

}

}

public void setMood(String mood1, String mood2, String mood3) {

System.out.println(name + "通常的情况下,和人打招呼的方式为:" + mood1);

System.out.println(name + "被抚摸情绪好的时候,打招呼的方式是:" + mood2);

System.out.println(name + "烦躁的时候会:" + mood2);

}

public void setLogs(int logs){

System.out.println(name+"有"+logs+"条腿");

}

}

下面是 狗的那个类继承类ANIMAL:

public class Dog extends ANIMAL{

public Dog(){

}

public static void main(String[] args) {

ANIMAL dog = new Dog();

dog.setName("狗");//设置动物名字

dog.setMammal(true);//设置是否Mammal

dog.setCarnivorous(true);//设置是Carnivorous

dog.setMood("摇摇尾巴", "旺旺叫", "呜呜叫");//设置 在3种不同情况下的动作

dog.setLogs(4);

}

}

输出:

狗是哺乳动物

狗是肉食动物

狗通常的情况下,和人打招呼的方式为:摇摇尾巴

狗被抚摸情绪好的时候,打招呼的方式是:旺旺叫

狗烦躁的时候会:旺旺叫

狗有4条腿

其他的动物 同样的原理。

补充:

public interface LandAnimal {

}

public interface WaterAnimal {

}

你的输出内容中 没用的到 (没有显示这两个接口有关信息,没有说明他是水生,陆生)

如果是狗的 那么直接 那个类 implements LandAnimal

public class Dog extends ANIMAL implements LandAnimal{}就行了 ,说明他是陆生的一种标志

这样就像 java.io.Serializable这个接口 ,一种标志。

关于java动物特征和JAVA动物类的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-23,除非注明,否则均为首码项目网原创文章,转载请注明出处。