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){ //处理每一条消息 【】 } }
时间: 2024-02-14 08:22:07 浏览: 60
这段代码存在一些问题,可能是因为中间部分被省略了。但是根据代码的结构和内容,我推测代码可能存在以下问题:
1. 【】符号的意义不明确,可能是代码中省略了一些内容;
2. IMsg接口中的beReadable()方法没有具体实现,可能会导致编译错误;
3. TextMsg类没有实现IMsg接口,可能会导致People类中的read()方法无法正确处理该类型的消息;
4. MoneyMsg类没有实现IMsg接口,可能会导致People类中的read()方法无法正确处理该类型的消息;
5. People类中的read()方法没有具体实现,可能会导致代码无法正常运行。
为了修复这些问题,您可以尝试进行以下操作:
1. 确定【】符号的具体意义,以便进行后续的代码编写;
2. 为IMsg接口中的beReadable()方法添加具体实现;
3. 让TextMsg类实现IMsg接口,并实现beReadable()方法;
4. 让MoneyMsg类实现IMsg接口,并实现beReadable()方法;
5. 在People类的read()方法中添加具体的消息处理逻辑,以便正确处理各种消息类型。
希望以上解答能够帮助您解决问题,如还有疑问,请随时提出。
阅读全文