这是我在学习的过程中,发现之前学习Java的一些小知识点弄得不是很明白,所以就翻书查了查,毕竟知识来不得半点虚假。我觉得看过书之后写写自己的心得体会是一个非常好的习惯,心得体会可以华丽也可以朴素,我的心得就比较随意一点,重在简单易懂,让查阅的人很容易就明白其中的意思。
接下来我就说说继承。 虽然都是面对对象的思想,但是Java中的继承和C++中的继承有点不同,Java不支 持多重继承,即子类只能有一个父类,不能继承多个父类,也就是不能有“class A exten ds B,C”这样的形式。
如果C是B的子类,B又是A的子类,那么习惯上称C是A的子孙类。Java的类按继承关系来说,大概可以看成是一个树形结构,而类则可看作是树上的结点。在这个树形结构中,任何类都是Object类的子孙类。每个类(除了Object类)有且仅有一个父类,但是一个类可以有零个或多个子类。既然Object类是所有类的子孙类,那么假如一个类(除了Object类)的声明中没有使用extends关键字,这个类被系统默认为是Object的子类,也即是说“class A”和“class A extends Object”是同等关系。
接下来我就说说继承。 虽然都是面对对象的思想,但是Java中的继承和C++中的继承有点不同,Java不支 持多重继承,即子类只能有一个父类,不能继承多个父类,也就是不能有“class A exten ds B,C”这样的形式。
如果C是B的子类,B又是A的子类,那么习惯上称C是A的子孙类。Java的类按继承关系来说,大概可以看成是一个树形结构,而类则可看作是树上的结点。在这个树形结构中,任何类都是Object类的子孙类。每个类(除了Object类)有且仅有一个父类,但是一个类可以有零个或多个子类。既然Object类是所有类的子孙类,那么假如一个类(除了Object类)的声明中没有使用extends关键字,这个类被系统默认为是Object的子类,也即是说“class A”和“class A extends Object”是同等关系。
说到继承,那何为继承呢?所谓子类继承父类的成员变量作为自己的一个成员变量,就好像它们是在子类中直接声明的一样,可以被子类中自己定义的任何实例方法进行操作。子类继承父类的方法也是一样的,继承了父类的方法后,这些方法就可以当作是子类自己定义的方法,在子类中进行调用。但是如果子类中定义的实例方法不能操作父类的某个成员变量,那么就说明该成员变量没有被子类继承。(这就关系到了成员变量的访问权限,具体是什么,后面有谈到。)
就此问题,有疑问的或不理解的朋友可以问我哦,很高兴你们来提问。