Java基于接口实现模拟动物声音代码实例
作者:扑街陈 发布时间:2022-07-28 04:46:07
标签:Java,接口,模拟
(1)编写接口Animal (Animal.java)
public interface Animal{
public abstract void cry();
public abstract String getAnimalName();
}
(2)编写模拟类Simulator (Simulator.java)
public class Simulator {
public void playSound(Animal animal) {
System.out.print("正在播放模拟" + animal.getAnimalName() +"的声音:");
animal.cry();
}
}
(3)编写Dog类和Cat类 (Dog.java、Cat.java)
Dog类:
public class Dog implements Animal{
public void cry(){
System.out.println("汪汪汪");
}
public String getAnimalName(){
return "狗";
}
}
Cat类:
public class Cat implements Animal{
public void cry(){
System.out.println("喵喵喵");
}
public String getAnimalName(){
return "猫";
}
}
(4)编写主类Application (Application.java)
public class Application{
public static void main(String[] args) {
Simulator simulator = new Simulator();
simulator.playSound(new Dog());
simulator.playSound(new Cat());
}
}
来源:https://www.cnblogs.com/chenrengu/p/13171774.html


猜你喜欢
- 本文分为俩部分:第一部分介绍如何给Eclipse安装Spring Boot开发插件spring tool suite(简称STS);第二部分
- 苹果的Touch Icon相对我们都比较熟悉,是苹果为了支持网络应用(或者说网页)添加到桌面需要的图标,有了这些Touch Icon的网页链
- 在编程过程中一定要注意代码命名的规范性,否则在使用和维护过程中将造成很大的麻烦,这也是一种良好的编码习惯。看下面代码,除了userPass命
- 首先在命令行创建一个PhoneGap工程phonegap create . "jspdf.sample" "J
- 背景:最近小组进行一个环境比较恶劣的项目,由于没有真实的测试环境,决定上云,最终选择国外的heroku,折腾半天,其中有一些坑在这里记录下来
- 一、堆排序1、什么是堆排序(1)堆排序:堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构
- Maven可以使用mvn package指令对项目进行打包,如果使用java -jar xxx.jar执行运行jar文件,会出现"
- 本文实例讲述了Android实现彩信附件的添加与删除功能。分享给大家供大家参考,具体如下:添加附件在ComposeMessageActivi
- Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsof
- 常用命令:打包:mvn package编译:mvn compile清空:mvn clean(清除编译后目录,默认是target目录)运行测试
- 一、实验:继承1、概念Maven工程之间,A 工程继承 B 工程B 工程:父工程A 工程:子工程本质上是 A 工程的 pom.xml 中的配
- 随着互联网的蓬勃发展,越来越多的互联网企业面临着用户量膨胀而带来的并发安全问题。本文着重介绍了在java并发中常见的几种锁机制。1.偏向锁偏
- 在实际应用中,我们往往有需要比较两个自定义对象大小的地方。而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我
- 绑定多个按钮到同一个事件1.添加代码private void clauseElementClicked(object sender, Eve
- 需求: 使用IO流将指定目录下的若干个音频文件的高潮部分,进行剪切,并重新拼接成一首新的音频文件 思路(以两首歌为例):第一首歌有
- 在C#中,当引用类型需要转换的时候,经常会用到关键字is、as以及显式强转。本篇来体验这三者的用法。先来梳理.NET引用类型转换的"
- 一、实体类转换成XML将实体类转换成XML需要使用XmlSerializer类的Serialize方法,将实体类序列化public stat
- 实现思路其实很简单,就是一个自定义的LinearLayout,并且textView能够循环垂直滚动,而且条目可以点击,显示区域最多显示2个条
- java中map与实体类的相互转换1. 在 pom.xml 中引入依赖包<dependency> <grou
- 做了2,3年的java-web,始终木有逃离所谓基础业务,增删改查这些一成不变的东西写起来浪费大量时间,于是做了个简单的代码生成器快速生成代