Java案例——猫狗案例加入跳高功能分析及其代码实现(面向对象)
动物类:姓名,年龄,吃饭,睡觉。
动物培训接口:跳高
猫继承动物类
狗继承动物类
部分猫继承猫类并实现跳高接口
部分狗继承狗类并实现跳高接口
代码展示:
Animal.java
package demo09;
/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:51*/
public abstract class Animal {private String name;private int age;public abstract void eat();public abstract void sleep();public Animal() {}public Animal(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public int getAge() {return age;}
}
Cat.java
package demo09;/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:53*/
public class Cat extends Animal {@Overridepublic void eat() {System.out.println("吃饭");}@Overridepublic void sleep() {System.out.println("睡觉");}public Cat(String name, int age) {super(name,age);}
}
Dog.java
package demo09;/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:53*/
public class Dog extends Animal {@Overridepublic void eat() {System.out.println("吃饭");}@Overridepublic void sleep() {System.out.println("睡觉");}public Dog(String name, int age) {super(name,age); //调用父类有参构造方法}
}
ErhaDog.java
package demo09;/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:57*/
public class ErhaDog extends Dog implements JumpInterface{@Overridepublic void eat() {System.out.println(this.getName()+"今年"+this.getAge()+"喜欢吃狗粮");}@Overridepublic void sleep() {System.out.println("二哈喜欢睡在地上");}public ErhaDog(String name,int age){super(name,age); //调用父类有参构造方法}public void door(){System.out.println(this.getName()+"在看门");}@Overridepublic void jump() {System.out.println("狗没学会跳高");}
}
Tomcat.java
package demo09;/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:56*/
public class Tomcat extends Cat implements JumpInterface{@Overridepublic void eat() {System.out.println(this.getName()+"今年"+this.getAge()+"tom喜欢吃鱼");}@Overridepublic void sleep() {System.out.println(this.getName()+"喜欢睡在沙发上");}public Tomcat (String name,int age){super(name,age); //调用父类有参构造方法}public void mouse(){System.out.println(this.getName()+"抓老鼠");}@Overridepublic void jump() {System.out.println(this.getName()+"学会了跳高");}
}
JumpInterface.interface
public interface JumpInterface {void jump();
}
Test.java
package demo09;/*** @Author:liger* @Description:爱学Java* @Time:2021-11-04 16:50*/
public class Test { //定义测试类public static void main(String[] args) {Cat c=new Tomcat("tom",10);// 使用有参构造方法c.eat();c.sleep();Tomcat tomcat= (Tomcat) c; //向下转型tomcat.mouse();tomcat.jump();Dog d=new ErhaDog("二哈",20);//使用有参构造方法d.eat();d.sleep();ErhaDog e= (ErhaDog) d; //向下转型e.door();e.jump();}
}
Java案例——猫狗案例加入跳高功能分析及其代码实现(面向对象)相关推荐
- 案例 猫狗跳高 java 1614102273
案例 猫狗跳高 java 1614102273 案例信息 实现 来一个接口 抽象的动物类 猫类继承与实现 测试类 接口多态与抽象类多态 对象只能调对应的方法(接口类或抽象类中的)
- 面向对象_猫狗案例加入跳高功能分析
/*猫狗案例,加入跳高的额外功能分析:从具体到抽象猫:姓名.年龄 吃饭.睡觉狗:姓名.年龄吃饭.睡觉由于有共性功能,所以,我们抽取一个父类:动物类:姓名.年龄吃饭();睡觉(){}猫:继承自动物类狗: ...
- 猫狗案例加入跳高功能分析及代码实现
猫狗案例加入跳高功能分析及代码实现 class Test01_Animal {public static void main(String[] args) {Cat c = new Cat(" ...
- 面向对象_猫狗案例加入跳高功能代码实现
/*猫狗案例,加入跳高的额外功能分析:从具体到抽象猫:姓名.年龄 吃饭.睡觉狗:姓名.年龄吃饭.睡觉由于有共性功能,所以,我们抽取一个父类:动物类:姓名.年龄吃饭();睡觉(){}猫:继承自动物类狗: ...
- 接口练习:猫狗案例扩展跳高功能
在"抽象类练习1:猫狗案例"的基础上,猫狗案例加入额外功能:跳高jump() 注意分析:是有的猫会跳高,有的狗会跳高 所以定义一个跳高接口.再定义两个类:跳高猫,继承猫,实现猫的跳 ...
- java多态猫狗吃骨头_javaSE学习(6):面向对象:多态的两个经典案例(猫狗案例和南北方人案例)...
1.猫狗多态案例 /* 2019年5月19日9点48 @author 潇雷 猫狗案例多态版: */ class Animal{ public void eat(){ System.out.printl ...
- Java的抽象类:猫狗案例
猫狗案例:从抽象到具体 狗或者猫: 成员变量:姓名,年龄 构造方法:无参,带参 成员方法:eat(猫吃鱼/狗吃肉) 因为有共性的内容,所以就提取一个父类,动物. 但是又由于吃饭的内容不一样,所以吃饭的 ...
- 面向对象之继承,抽象,接口的案例(刘意老师的猫狗案例)
猫狗案例,加入跳高的额外功能 分析:从具体到抽象 猫: 姓名,年龄 吃饭睡觉 狗: 姓名,年龄 吃饭睡觉 由于有共性功能.所以我们抽取出一个父类: 动物: 姓名,年龄 吃饭(); 睡觉(){} 猫:继 ...
- 抽象类与接口的典型应用:猫狗案例,加入调高的额外功能
/* 抽象类与接口应用:猫狗案例,加入调高的额外功能 分析:从具体到抽象 猫: 姓名,年龄 吃饭.睡觉 狗: 姓名,年龄 吃饭.睡觉 由于有共性功能,所以我们抽 ...
最新文章
- 异步SOCKET与同步SOCKET
- HTML Img(Type)
- spring mvc中的拦截器
- 计算机网络布线开题报告,网络综合布线开题报告.docx
- 发那科机器人圆弧指令怎么用_发那科机器人应用-运动指令入门(1)
- rgb转hsv (Verilog)
- Inferred type 'S' for type parameter 'S' is not within its bound
- 计算机桌面维护介绍,电脑显示器的维护
- Python杀死了Excel
- JAVA面向对象编程学习 (1)语法基础与类与对象
- 人脸识别系统——Face recognition 人脸识别
- 浅谈一下低频高频时阻抗匹配的重要知识
- 51.【Java String方法的小结】
- 该网站未根据工信部相关法律规则进行备案
- 七个习惯之五:知彼解己
- 全志V系统tina系统查看系统设置了哪些中断为唤醒源
- codeblock主题颜色配置
- Jquery和CSS3实现图片鱼眼显示效果
- 将LIBSVM用于多分类时根据svmtrain输出结果得到各OvO分类超平面的法向量w和偏移项b
- Windows神器 微信对话视频生成器