「java动物特征」JAVA动物类
今天给各位分享java动物特征的知识,其中也会对JAVA动物类进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java代码编写,实现《动物特性的面向对象描述》
- 2、JAVA动物特性报告
- 3、java中动物特性的面向对象描述
- 4、java设计一个动物类,包括动物的基本属性。例如名称,大小,重量等,并设计相应的动作例如跑,跳,走等。
- 5、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动物类的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-23,除非注明,否则均为
原创文章,转载请注明出处。