## 教材学习内容总结
在第四周的学习过程中,我学习了第五章的内容。
第五章内容总结:
1.子类继承的方法只能操作子类继承和隐藏的成员变量。
2.子类和父类在同一包的继承性
子类自然继承了其父类中不是private的成员作为自己的成员。
3.子类和父类不在同一包中的继承性
子类只继承父类中的protected和public访问权限的成员变量作为子类的成员变量。
4.子类可以体现多态,即子类可以根据各自的需要重写父类的某个方法,子类通过方法的重写可以把父类的状态和行为改变为自身的状态和行为。
5.“开-闭原则”。
## 代码调试中的问题和解决过程
无
## [代码托管](码云学习项目链接)
## 上周考试错题总结
A.如果想在方法中使用被隐藏的成员变量,可以使用关键字super。
B.double类型的成员变量的默认值为0,局部变量没有默认值。
C.对成员变量的赋值操作只能放在方法中。
D.面向对象语言中的“类”相当于C语言中的“函数”。
解析:P55-57。A项:应使用关键字this。B项:double类型的成员变量的默认值为0.0。D项:面向对象语言中的“方法”相当于C语言中的“函数”。
2. A.创建一个对象包括对象的声明和为对象分配变量两个步骤。
B.使用Student stu;声明对象变量后,stu的内存中还没有任何数据。
C.引用型成员变量的默认初值为0。
D.对象的引用存在堆中,对象的实体(分配给对象的变量)存在栈中。
E.String a="ab"+"cd";创建了3个对象。
解析:4.3.2节。C项:引用型成员变量的默认初值为null。D项:对象的引用存在栈中,对象的实体(分配给对象的变量)存在堆中。
3. A.类方法总是可以操作该类中的类变量,与访问限制符无关。
B.当在其他类中创建一个该类的对象时,该对象不能访问自己的私有变量。
C.public、protected、private均可以用来修饰类。
D.如果源文件使用import语句引入另一个包的类,并创建了一个该类的对象,那么该类的这个对象不能访问自己的友好变量和友好方法。
解析:4.12节。不能用protected和private修饰类。
4. 下列代码的执行结果均为true。 A
int i = 128;
Integer i2 = 128;
Integer i3 = new Integer(128);
System.out.println(i == i2);
System.out.println(i == i3);
A.true
B.false
解析:Integer类型的对象包含一个int类型的字段,Integer会自动拆箱为int,因此值相等。