7-4 处理微信消息
分数 10
全屏浏览题目
切换布局
作者 姚晓玲
单位 临沂大学
微信接收的消息类型有如下几种:
文本3/图片34/语音42/名片43/视频47/动态表情48/地理位置49/图文53/视频会话10000/系统消息4900001/转账4900002/红包
你可以从微信中收到以上的不同类型的消息,然后进行相应的处理,请编写代码,完成不同消息接收处理过程。
以上是该题的类图,请根据类图,完成代码
public class Main {
public static void main(String[] args) {
IMsg [] msgs = new IMsg[3];
msgs[0] = new VoiceMsg();
msgs[1]= new MoneyMsg(300);
msgs[2] = new TextMsg("我给你说哈....");
People p = new People();
p.read(msgs);
}
}
【】 IMsg{
public void beReadable();
}
class TextMsg 【】{
String text;
public TextMsg(String text){
this.text = text;
}
@Override
【】
}
class VoiceMsg 【】{
@Override
public void beReadable() {
sound();
}
public void sound(){
System.out.println("播放信息");
}
}
class MoneyMsg 【】{
double money;
public MoneyMsg(double money){
this.money = money;
}
@Override
【】
}
class People{
public void read(IMsg []msgs){
//处理每一条消息
【】
}
}
输入格式:
输出格式:
输出各种消息读出信息
输入样例:
18 -299
输出样例:
在这里给出相应的输出。例如:
播放信息
收钱:300.0
处理文本消息:我给你说哈....
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
public class Main {
public static void main(String[] args) {
IMsg [] msgs = new IMsg[3];
msgs[0] = new VoiceMsg();
msgs[1]= new MoneyMsg(300);
msgs[2] = new TextMsg("我给你说哈....");
People p = new People();
p.read(msgs);
}
}
interface IMsg{
public void beReadable();
}
class TextMsg implements IMsg{
String text;
public TextMsg(String text){
this.text = text;
}
@Override
public void beReadable()
{
System.out.println("处理文本消息:"+text);
}
}
class VoiceMsg implements IMsg{
@Override
public void beReadable() {
sound();
}
public void sound(){
System.out.println("播放信息");
}
}
class MoneyMsg implements IMsg {
double money;
public MoneyMsg(double money){
this.money = money;
}
@Override
public void beReadable()
{
System.out.println("收钱:"+money);
}
// public double getMoney() {
// return money;
// }
// public void setMoney(double money) {
// this.money = money;
// }
}
class People{
public void read(IMsg []msgs){
//处理每一条消息
for(int i=0;i<msgs.length;i++)
{
if(msgs[i] instanceof TextMsg )
{
((TextMsg)msgs[i]).beReadable();
}
else if(msgs[i] instanceof VoiceMsg )
{
((VoiceMsg)msgs[i]).beReadable();
}
else if(msgs[i] instanceof MoneyMsg)
{
((MoneyMsg)msgs[i]).beReadable();
}
}
}
}