面向对象编程,我的思想-2

      转载内容 2004-9-9 18:52
面向对象编程,我的思想
作者:韩景维  时间:2004-9-8  文档类型:原创  来自:相关论坛
浏览统计 year:696 | Quarter:696 | Month:696 | Week:696 | today:668

第 1 页 类与对象的初探
第 2 页 内置数据类型与函数
第 3 页 深入探讨面向对象
第 4 页 一起来看看workstation这个类
第 5 页 构造函数、默认构造函数、 缺省构造函数
第 6 页 重载构造函数
第 7 页 初始化与赋值




1.2 内置数据类型与函数:

计算机程序在存储数据时必须跟踪3个基本属性为:

1. 信息存储在何处;

2. 存储的值是多少;

3. 存储的信息是什么类型的;

让我们来看看编程语言的内置数据类型都有哪些!(呵呵,这个不大好说,因为每门语言都有自己独特的数据类型,但这毕竟是少数,比如在JAVA中有byte类型的数据,而在C++中就没有,希望你能举一反三!)比如整数”int ”,浮点类型的数据”float”!字符串”String”,以及数组还有结构体等等。然而在写程序的时候,根据需要我们会创建一个类型的变量或常量,例如:由于我们需要创建一个整形的变量i为5,我们就可以这样做,int i = 5;而根据需要我很有可能改变i的值,也就是从新给它赋值,比如让它等与6,就可以在所需的地方改成i = 6;由此我们知道,在“值”上可以发生变化的量就叫变量。不会发生变化的量就叫做常量了,在C++中用count关键字来声明,而在JAVA中则使用final关键字来声明。由于不同语言的声明格式不一样,这里就不做一一介绍了,详细的内容清查阅相关书籍!

在这里我们主要讨论一下函数,我们可以把函数想象成一个“实现某种特定功能的黑匣子”-------这个功能是由你来设定的,举个例子来说:现在我问你“2+3等于多少”?我相信你能很快的回答我等于5。让我们来分析分析这句话包含什么信息!首先我要把你的大脑想象成是一个黑匣子,我并不知道也没有必要知道你的大脑是如何工作的(也就是怎么运算的),我关心的只是我传给你的是什么信息?你对信息做了哪些处理? 以及你返回给我的是什么信息?需要提醒你一下的是每个方法都会返回一个信息给调用者的,除了构造函数外(稍候我会作详细的介绍)。我现在需要把自己当作是一名程序员,而你呢?当然就是计算机了!计算即可没有人那么聪明,它只会按事先约好的特定的格式运行,我想让它具有如上所述的功能,我就要先定义这个黑匣子!首先我要告诉这个黑匣子会有两个整数值给你(这就是所谓的参数,是程序员需要给黑匣子的信息),然后就要定义这个黑匣子内部实现这两个整数相加的运算(这就是黑匣子对数据所做的加工,根据需要,你可以做任何的加工。)。最后再标注它返回给我一个同样是整型的数值(这是黑匣子返回给程序员的信息)。一个函数就这样定义完了,让我们来看看书写格式:

int addnum(int x,int y){

return x+y;

}

具体的含义是这样的:

int /*返回值类型*/ addnum /*方法(黑匣子)名称*/ (int x,int y/*传入的参数*/){

return x+y; /*内部是想方法(实现相加运算,)并用return返回给调用者结果*/

}

首先请注意上明的“return”语句!return 关键字的含义是向调用者返回紧跟在它后面的信息!就像上面一样,因为我问你,你才会回答我,如果我不问你,你就不用回答我的!在计算机中也一样,定义好这个函数在哪里调用呢?我只能告诉你,哪里需要就在哪里调用!当然,你可以根据需要去更改参数、返回值以及内部实现,具体到如何定义如何调用你只好去参考相关的资料了!在这里我只是给你一个思想!

有时你会遇到这样的问题,我让你记住,我的年龄是20岁!从字面上理解,你并没有给我返回信息!然而事实上,你确实给我返回了信息,信息的内容是“无信息,也就是无返回值类型void”。具体的程序如下:

int myAge = 0;

int a=20;

void remAge(int a){

myAge=a;

}

具体的函数说明如下:

int myAge =0; //定义并初始化我的年龄为0;

int a=20; /*定义变量a等于20*/

void /*返回值类型为无返回值类型*/ remAge /*函数名称*/(int a /*传入的参数*/){

myAge=a; //内部实现方法,注意,没有return返回!!!

}

关于函数的话题还有很多很多,这里就不一一介绍了,我的目的是让你知道函数是怎么一会事儿!为下面的讨论作铺垫!

1.3 指针以及引用:

指针及引用是在C++中有的,JAVA中没有。JAVA中取消了对内存的操作,随之而来的事也取消了操作符重载的操作。不过在稍候我还是会介绍一些操作符重载的功能等。引用主要还是用在函数参数的传递上。所以我在这里就不做过多的介绍了。他们很实用,有兴趣的同学可以参阅C++相关书籍。

.4 运算符及控制语句:

还是自己看看相关书籍吧,这里就不再熬述了!


标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}