



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
简单JAVA程序的编写建立一个源文件,MYJAVAJAVAPUBLICCLASSMYJAVAPUBLICSTATICVOIDMAINSTRINGARGSSYSTEMOUTPRINTLN“早上好,GOODMORNING”1平台无关性C开发和JAVA编译出来的程序需要虚拟机运行的,其二进制代码是中间代码。所以,只要是装有虚拟机(JAVAWM,NETFRAMEWORK)的地方就可以执行C编译出来的程序。跟平台没有关系,所以叫做平台无关。JAVA语言与其他语言相比,最大优势就是能够在所有的计算机上运行,能做到这一点,是因为JAVA可以在计算机的操作系统之上提供了一个JAVA运行环境2JVM它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JAVA虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得JAVA程序只需生成在JAVA虚拟机上运行的目标代码字节码,就可以在多种平台上不加修改地运行。JAVA虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。3JVM是JAVA运行环境的重要组成部分,正是JVM中的解释器负责将字节码翻译成本地的机器码。4虚拟机JAVA虚拟机(JAVAVIRTUALMACHINE简称JVM)是运行所有JAVA程序的抽象计算机,是JAVA语言的运行环境,它是JAVA最具吸引力的特性之一。JAVA语言的一个非常重要的特点就是与平台的无关性。而使用JAVA虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入JAVA语言虚拟机后,JAVA语言在不同平台上运行时不需要重新编译。JAVA语言使用模式JAVA虚拟机屏蔽了与具体平台相关的信息,使得JAVA语言编译程序只需生成在JAVA虚拟机上运行的目标代码字节码,就可以在多种平台上不加修改地运行。JAVA虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。类与对象的定义(简单代码),概念的理解类是对象的模板可以看做同一类型的对象的规范对象则是现实中的实体类是抽象的定义了对象具有的属性和方法而对象是实体举个例子人这个类定义了属性有身高和体重方法有睡觉吃饭你是LAM105141822假设身高178,体重65KG你是人这个类的一个对象你具有类定义的睡觉和吃饭方法类与对象JAVA语言的面向对象机制DESIGNPATTERNFORJAVA人月神话封装、继承和多态的理解,继承的例子类与对象JAVA语言的面向对象机制DESIGNPATTERNFORJAVA人月神话OO(OBJECTORIENTED)三个最核心的概念封装隐藏一些不需要被外界知道的细节继承现实世界中一种抽象具体的关系水果蕉西瓜皇帝蕉大蕉香蕉黑美人黄肉红肉白肉ISA皇帝蕉ISA蕉蕉ISA水果继承使得上层类型的代码可以为下层重用多态同一个名字在不同的场景下有不同的形态(不同的动作)如CTRLCCTRLV类CLASSCLASSDOGSTRINGSTRDOGNAMEINTNAGE/年龄FLOATWEIGHT/重量VOIDEATFOODF/吃的动作,吃的必须是FOODVOIDSLEEPINTNHOUR/睡眠的时间VOIDPLAYVOIDRUNINTNDISTANCEDOG/构造方法,用于初始化对象DOGSTRINGNAME,INTAGEPUBLICSTATICVOIDMAINSTRINGARGSDOGGNEWDOG“MIKE”,4GEATNEWBONE/假设BONE是一种FOODGPLAYGRUN1000GSLEEP1反射是JAVA语言一种特殊的机制通过字符串的“名字”找到对象或调用方法。创建一个对象(CAT)CATCNEWCATDOGGNEWDOGDESIGNPATTERN认为这样创建对象不好,把要创建什么对象都写在源代码中(HARDCODE),好的写法应该如下/以字符串的“CAT”作为参数,得到CAT类的对象ANIMALAANMIALGETINSTANCE“CAT”/灵活,反射/通过字符串的名字调用某个方法想让CAT表演节目节目1RUN5,SLEEP5,JUMP3,ROUND3,SIT节目2ROUND5,SLEEP2,RUN4,RROUND5,SIT传统方法CATCNEWCATCRUN5CSLEEP5CJUMP3CROUND5CSLEEP2增加节目3,要重新编译源代码修改节目2,也要重编译源代码比较好的做法是用反射,先把动作顺序记在文本文件中INVOKE第一个动作名字;/通过反射调用方法INVOKE第二个动作名字;INVOKE第三个动作名字;把表演本身和表演的内容分离泛型;把类型作为参数一般的参数,是数值类型或类类型VOIDFDOUBLEA,DOUBLEB,DOUBLEC/数值类型参数/用求根公式解CATPLAYCATANOTHERCAT/类类型参数/两只猫在玩类型CAT、INT,LONG,FLOATJAVA语言的容器类(CONTAINER)泛型类数组、向量、列表。数组中放什么类型的对象,可以在创建数组时指定LISTLNEWLINKEDLISTLISTLLNEWLINKEDLIST接口的理解;能够获得服务的界面PUBLICINTERFACEMYFVOIDPOWERBOOLEANB/电源开关VOIDINC_TEMP/升温VOIDDEC_TEMP/降温接口中没有任何实现,只有服务的描述服务的描述与服务的实现分离JAVA语言的多继承问题JAVA语言不支持多继承一个儿子只能有一个父类苹果梨苹果梨把梨做成接口,一个JAVA类可以继承一个类,实现N个接口计算分段函数的程序;PUBLICCL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年植入式广告行业当前竞争格局与未来发展趋势分析报告
- 收徒基础知识培训内容课件
- 收入影响消费课件
- 支教兴趣课课件
- 操作工安全知识培训心得
- 2025年会计电算化考试试题(含参考答案)
- 2024事业单位综合基础知识试题及答案
- 2025世界海洋日海洋知识竞赛题及答案
- 2024年融媒体新闻采编技术应用及理论知识考试题库(附含答案)
- 2024年眩晕原发性高血压中医护理方案考核试题及答案
- JT-T-1094-2016营运客车安全技术条件
- 2024年陕西宝鸡市市级机关及其直属机构遴选公务员及选聘事业人员39人重点基础提升难、易点模拟试题(共500题)附带答案详解
- 静脉输血并发症预防及处理
- 物业设施设备管理指南
- 《陆上风电场工程设计概算编制规定及费用标准》(NB-T 31011-2019)
- EPC项目质量控制目标及分解
- 《高温熔融金属吊运安全规程》(AQ7011-2018)
- 铁道工程技术专业调研报告
- 面点师简历模板
- 超详细展览会、展会期间事项推进表
- 杭州三花微通道换热器有限公司环境影响报告
评论
0/150
提交评论