1.
2.
分析题目:首先是一个Base类(1)不带参数的构造方法;
(2)带一个参数的构造方法 (2)和(1)之间构成了重载;
(3)是一个fun方法 (4)Child类继承了Base类
子类就是(4),从A、B、C、D四个选项中可以看出均为含有一个参数的fun方法,将选项放入子类,就是要将子类与父类的fun方法构成重写(方法返回值、方法名、参数列表 均相同),而选项之中的不同之处在于访问修饰限定符不一样。
若要构成重写,子类的访问修饰限定要大于父类的访问修饰限定。
public>protected>包访问权限(默认访问权限)>private.
3、(1)面向对象设计方法主要特征:继承、封装、多态、组合。
(2)结构化程序设计原则:模块化、自顶向下、逐步求精。
4、
分析:在myclass类中,i是一个静态的成员变量,最终输出的是 i , 成员变量如果没有初始化,默认值为0.
5、在基本JAVA类型中,如果不明确指定,整数型的默认是 int 类型,带小数的默认是 double 类型。
6、方法通常存储在进程中的方法区。
(程序运行起来是在JVM中,JVM中有5个区,JAVA虚拟机栈、本地方法栈、堆区、方法区、程序计数器)
7、不考虑反射,关于私有访问控制符private修饰的成员变量,只能被该类自身所访问和修改。
8、类声明中,声明一个类不能再被继承的关键字是final。
abstract:抽象类,能被继承,继承之后还可以重写方法。
static:修饰静态类。
9、假设A类有如下定义,设a是A类的一个实例,下面语句的调用错误的是 C
public class A {
public int i;
static String s;
void method1(){};
static void method(){
}
}
public class Main{
public static void main(String[] args) {
A a = new A();
}
A. System.out.println(a.i); // i 属于成员变量,通过对象的引用来访问
B. a.method1(); //method1()是实例的成员方法
C. A.method1(); //类名去访问,除非是访问静态方法才可以
D. A.method2(); //由C的解析得D正确