第21行报错Language language2 = cs.contact(areaCode:33);

来源:4-2 面向对象特性之多态

weixin_慕哥8135526

2021-01-11 22:23


package com.imooc.objectproject01.sample05.system;

public class CustomerService {

    public Language contact(int areaCode){
        if(areaCode == 86){
            return new Chinese();
        }else if(areaCode == 33){
            return new Franch();
        }else{
            return new English();
        }
    }

    public static void main(String[] args) {
        Language english = new English();
        english.voice();
        Language language1 = new Chinese();
        language1.voice();
        CustomerService cs = new CustomerService();
        Language language2 = cs.contact(areaCode:33);
        language2.voice();
    }
}


写回答 关注

4回答

  • 晚风醉酒
    2021-03-15 11:35:17

    areaCode是方法自己显示的参数名称,表示你要输入的参数是哪个参数,代表什么含义,是什么类型,不是你输入的参数本身。如果写成areCode:33,代表你输入的是areCode:33,而实际上只是想输入数字33,此时的areaCode就是定义参数名称,即int areaCode,int类型

  • error_virus_404
    2021-03-09 20:33:27

    试试改成

    Language language2 = cs.contact(33);


  • 慕码人7406720
    2021-01-12 22:47:31

    那个括号里面是让你给一个参数,所以要删掉areaCode,这里不是定义。

  • weixin_慕哥8135526
    2021-01-11 22:52:37

    idea提示 cannot resolve symbol areaCode 我不明白什么意思,如何解决

    MTbaby

    Language language = cs.contact(68); 这里不要写areaCode,直接写68就可以了

    2021-01-12 15:53:18

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530553 学习 · 6091 问题

查看课程

相似问题