内部类

    技术2022-05-20  37

    例题:

    public class OuterClass

    {

          private double d1 = 1.0;

          //insert code here

    }

     

    You need to insert an inner class declaration at line 3. Which two inner class declarations are valid?(Choose two.)

    在第三行插入一个内部类,下面那两个内部类的声明是确定的?(选择两个)

     

    A. class InnerOne

    {

          public static double methoda() {return d1;}

    }

     B. public class InnerOne

    {

          static double methoda() {return d1;}

    }

    C. private class InnerOne

    {

          double methoda() {return d1;}

    }

    D. static class InnerOne

    {

          protected double methoda() {return d1;}

    }

    E. abstract class InnerOne

    {

          public abstract double methoda();

    }

     

    说明如下:

    一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。 故 A、B 错

    二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。 故 D 错

    三.非静态内部类的非静态成员可以访问外部类的非静态变量。 故 C 正确

    四.答案为C、E


    最新回复(0)