使用继承在IO类中创建对象时找不到符号

时间:2014-12-01 23:52:12

标签: java inheritance symbols

我正在尝试在我的IO类上创建一个旅游对象,并且在各自的类中正确指定了参数。但是,它不会编译,因为它说它找不到符号。是因为我使用旅游作为子课程吗?编译器说它找不到变量“nam”等符号。感谢您的帮助。

这是我的IO类中的一个方法..

private void addMemberCard()
        {
            System.out.println("Enter Member name");
            String name = reader.nextLine();
            System.out.println("Select 1. Tourist, 2. Business");
            System.out.println("Enter your choice");
            int choice = reader.nextInt();


            MemberCard m;
            if (choice == 1){m = new Tourist (nam, rat, cred, cit);}
            else if (choice == 2){m = new Business(nam, rat);}
            preston.addMemberCard(m);
    }

这是我在旅游类中的构造函数

public Tourist (String nam, int rat, int cred, String cit)
    {
        super(nam, rat, cred);
        city = cit;
    }

1 个答案:

答案 0 :(得分:0)

这与继承无关。您需要了解参数和参数之间的区别。参数namratcredcit仅存在于Tourist构造函数中。在addMemberCard()方法中,namratcredcit不存在; markspace间接指出了这一点。现在你需要使用参数,现有变量和实际值。

这应该有希望帮助:http://en.wikipedia.org/wiki/Parameter_%28computer_programming%29#Parameters_and_arguments