📌  相关文章
📜  教资会网络 | UGC NET CS 2017 年一月至三日 |问题 47(1)

📅  最后修改于: 2023-12-03 15:39:55.666000             🧑  作者: Mango

UGC NET CS 2017 年一月至三日问题 47

介绍

UGC NET (University Grants Commission National Eligibility Test)是印度的一个全国范围内举行的通过率很低的考试,主要面向大学和学院的教职员招聘。UGC NET CS是针对计算机科学和应用的专业考试。该考试旨在测试考生在计算机科学和应用方面的专业知识和技能。

问题描述

考虑以下代码片段:

class Person {
    public int age;
    Person(int age) {
        this.age = age;
    }
}

class Employee extends Person {
    public String empId;
    Employee(int a, String id) {
        super(a);
        empId = id;
    }
}

class Test {
    public static void main(String args[]) {
        Person p = new Person(21);
        Employee e = new Employee(21, "1001");
        int val = e.age;
        String str = e.empId;
        p = e;
        str = p.empId;
    }
}

代码中的哪个行编译错误?

(A) Line 1

(B) Line 5

(C) Line 8

(D) Line 12

答案

(D) Line 12

解释

在第12行中,p是一个Person类型的变量,但是Person类中没有empId属性和方法,而Employee类中有empId属性。尝试在Person类中调用一个没有定义的属性或方法时,编译器将引发“无效的符号错误”。

因此,选项D是正确的。