C++中的继承和Java中的继承区别不大,但是对于一个新手来说,C++中使用单冒号继承,
跟Java中的extends相比,java中对新手相对友好一点,C++中“::”和“:”的理解相对于
我这样的新手不太友好。前期只好以会用为主了,比如在继承中单冒号的作用是声明基类。
继承的方式:
(java)
//基类
public 类名
{属性
方法}
//派生类
public 派生类 extends 基类
{属性
方法}
在java中类的访问修饰符是在类前定义可以很方便的看到这个类的类型到底如何,但是
增加代码量这一问题并没有解决。
(c++)
//基类
class 类名
{
属性
方法
}
//派生类(使用单冒号衔接)
class类名:访问修饰符(默认private) 基类名
{
属性
方法
}
c++中并不在类前写访问修饰符来声明作用范围,派生类在继承时使用修饰符
用来判断这个派生类是否是基类的私有或保护或公开。
其中二者的区别在于C++中是支持多继承,而java中仅仅只有单继承。
但由于接口的存在这个并不是一个问题
方法重写:
首先方法重写的调用方法不管在c++还是java中都是使用基类去“装”派生类类型,
这也是多态其中一种方式。区别在于java可以直接重写,而c++中,重写需要用到
“virtual”来声明虚函数,不如java来的方便快捷,只是在阅读代码的时候比较直观
的知道这个函数可能会被重写。
原文地址:https://www.cnblogs.com/deemohans/p/11669852.html
时间: 2024-10-10 07:13:24