程序猿的日常问题

1. 编程语言中为什么要区分数据类型?

1.1要想知道为什么要区分数据类型,首先搞清什么是数据类型? 

       官方解释:数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作。

       自己理解:我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不清1和‘汉’的区别的,因此,在每个编程语言里都会有一个叫数据类型的东西,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,就传字符串类型给他。

1.2  为什么要区分数据类型 ?

     为了更好的利用计算机的存储空间

     为了对数据对象进行检查


2. 数组是什么? 是否可以作为一种数据类型?

2.1 数组是什么?

     数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。 这些无序排列的同类数据元素的集合称为数组。

2.2 数组是否可以作为一种数据类型?

     数组是一种引用类型的数据类型


3. 类是什么?否可以作为一种数据类型?

3.1:类是什么? 

       类是具备某些共同特征的实体的集合,它是一种抽象的概念,用程序设计的语言来说,类是一种抽象的数据类型,它是对所具有相同特征实体的抽象。 

3.2 类是否可以作为一种数据类型

 类是一种引用类型的数据类型


4. 类的构造函数和析构函数,有什么关系,分别是如何使用的?

4.1  概念不同:

析构函数:对象所在的函数已调用完毕时,系统自动执行析构函数。

构造函数:是一种特殊的方法。特别的一个类可以有多个构造函数  ,可根据其参数个数的不同或参数类型的不同来区分它们  即构造函数的重载。

4.2  作用不同:

析构函数:析构函数被调用。

构造函数:为对象成员变量赋初始值

4.3  目的不同:

析构函数:”清理善后”  的工作

构造函数:主要用来在创建对象时初始化对象,  即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。


5. 类中方法的重载和方法重写,有什么关系,分别是如何使用的?

5.1重写

重写就是在父类当中定义一个虚方法,然后子类去重写,来实现自己的功能。方法名、参数、返回值必须是同样的。

5.2重载

重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数。

比如现在有许多小猫出生,有的要起名字,有的不需要起名字。那么我们就可以用方法重载。


 6. 类、抽象类和接口的关系?他们三者的抽象程度对比。

6.1类、抽象类和接口的关系?

类可以实例化对象,而抽象类和接口不可以实例化对象。

抽象类和类只能实现单重继承,而接口可以实现多重继承

继承抽象类或接口的普通类都必须把里面的抽象方法和接口中

的方法实现

抽象程度对比:接口>抽象类>类

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容