当前位置: 首页 > news >正文

泰安网站建设电话廊坊seo整站优化

泰安网站建设电话,廊坊seo整站优化,厦门建设局保障房官网,国内做设计的网站有哪些// 前言 面向对象的java语言有着多种设计模式与特性。比如封装、继承、多态等等。 在这篇文章中,我会使用java的代码思路,实现C语言版的JAVA三大特性。 并从写代码的角度,从0开始构建。 定义结构体(对象) 设计了一…

//

前言

面向对象的java语言有着多种设计模式与特性。比如封装、继承、多态等等。
在这篇文章中,我会使用java的代码思路,实现C语言版的JAVA三大特性。
并从写代码的角度,从0开始构建。

定义结构体(对象)

设计了一个机器人结构体(对象)。
机器人有他的ID,这是他的静态特征,是主键。
机器人有制造商,不光机器人有,所有工业产品都有。
机器人有许多行为,跑、跳、检查修理日期等等。
机器人有许多内设动作,就是预设将不同行为进行排列组合。

继承

机器人是工业产品的子类,即机器人继承了工业产品。
体现在代码上就是结构体的嵌套

封装

将机器人的所有特征、行为、内置动作封装在一起。
体现在代码上就是结构体里有变量和函数指针。

typedef struct _Manufacturer {char name[10];
} Manufacturer;typedef struct _robot
{int id;Manufacturer manufacturer;                 // inheritvoid (*function)(struct _robot );          // polymorphicint  (*time2repair)(struct _robot);                     void (*process)(struct _robot );
} Robot;

多态

机器人结构体(对象)中有功能函数指针function和维修函数指针time2repair。
定义函数robot_run_function,robot_jump_function,实现function功能。
定义函数robot_time2repair,实现time2repair功能。

void robot_run_function(Robot robot) {printf("robot_id: %d, run!\n", robot.id);
}
void robot_jump_function(Robot robot) {printf("robot_id: %d, jump!\n", robot.id);
}
int robot_time2repair(Robot robot) {printf("robot_id: %d, need to repair next weekend!\n", robot.id);return 9;
}

定义函数process1,实现process功能(暂时不写)

void process1(Robot robot)
{// 进程1:先跑2次,再跳1次,最后计算修理日期
}

初始化机器人结构体(对象)。将process1赋给函数指针process,调用process。

int main() {Robot robot;Manufacturer manufacturer;strcpy(manufacturer.name, "SKF");robot.id = 2;robot.manufacturer = manufacturer;robot.process = process1;robot.process(robot);return 0;
}

最后实现process1,思路仍然是将函数赋给函数指针并调用。

void process1(Robot robot)
{// 进程1:先跑2次,再跳1次,最后计算修理日期robot.function = robot_run_function;robot.function(robot);robot.function(robot);robot.function = robot_jump_function;robot.function(robot);robot.time2repair = robot_time2repair;int remain_days = robot.time2repair(robot);printf("manufacturer: %s, id: %d, remain_days: %d\n", robot.manufacturer, robot.id, remain_days);
}

打印结果

robot_id: 2, run!
robot_id: 2, run!
robot_id: 2, jump!
robot_id: 2, need to repair next weekend!
manufacturer: SKF, id: 2, remain_days: 9
http://www.dinnco.com/news/55275.html

相关文章:

  • 自己做网站 发布视频教程网站工具查询
  • 哪儿能做网站建设百度广告联盟收益
  • 网站推广如何做建网站教程
  • 完整域名展示网站源码整站优化深圳
  • 营业执照上有以上除网站制作河南郑州最新消息今天
  • 中山做网站的公司seo营销是什么
  • 入侵网站做排名矿坛器材友情交换
  • 房地产网站广告销售怎么做免费技能培训网
  • 网站怎么做静态化市场营销计划书模板
  • 广告 网站免费软文推广平台
  • 写作网站后台账号密码忘了怎么办什么软件可以发布推广信息
  • 专业建站网产品网络推广会计培训班要多少钱一般要学多久
  • wordpress 删除数据库seo推广灰色词
  • wordpress减肥长沙网站优化方案
  • 网站建设包括哪方面广州seo
  • 长春哪里做网站好南京市网站seo整站优化
  • 网页设计师联盟qq群解释seo网站推广
  • 中小型企业网站建设与推广找公司做网站多少钱
  • wordpress安卓源码宁波seo外包方案
  • wordpress如何使用dplayer沈阳seo公司
  • 网站建设入什么科目百度知道个人中心
  • 大连的网站制作公司申请域名
  • 宝安建网站日本今日新闻头条
  • 赣州网站建设机构seo品牌优化整站优化
  • 安做省民改厅网站浑江区关键词seo排名优化
  • 企查查企业信息查询手机版下载aso优化方案
  • 一个网站怎么做新闻 最新消息
  • 实时定量引物设计网站怎么做小说网站排名
  • 无锡做网站首选众诺南宁百度seo公司
  • 如何做网上销售廊坊seo建站