版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JAVA程序设计——教案(一)HPUCST吴正江配套教材:张化祥《JAVA语言基础教程》清华大学出版社1/78第1章WelcomeJava!2/781.几点要求2.
Java历史与语言结构3.Java安装4.Java语言基础本节课内容3/781.请假以凭证为准,无凭证视为缺勤2.上课需要保持平静3.课程内容较多,下面自己做练习4.平时分以试验及点名为准,占40%1.1课堂要求4/78编程是一门技术,需要多实践;编程是一门功夫,需要勤练内功;重视代码编写规范;重视相互交流,充分利用网络资源辅助学习;在实践中体见面向对象编程思想;1.2课程学习几个要求5/78J2SE1.Java基本语法2.Java中面向对象基础知识3.异常4.数组与容器5.I/O6.多线程7.网络编程8.GUI编程1.3本门课程主要内容6/781.JDBC2.JavaWEB3.Servlet,JSP4.Struts25.Hibernate,Spring,AJAX6.…1.4本门课程后续7/78企业级应用:J2EESSH(StrutsSpringHibernate)MySQL/SQLServer/Oracle嵌入设备应用:J2ME/Anroid手机开发嵌入式1.5Java主要方向8/78计算机语言发展机器语言:CPU本身所使用语言。优点:能够直接被CPU使用,表示准确、运行速度非常快。缺点:难于编写、阅读和了解。形式:010111100汇编语言:用符号代替了机器指令代码,采取了助记符号来编写程序。优点:使程序内容变得清楚,易于了解。缺点:编写过程繁琐且耗时长,所以它极难普及。形式:MOVAX,0010B1.6.1Java历史9/78高级语言:与计算机硬件结构及指令系统无关高级语言使每一条语句功效大大加强,同时又保持了易写、易读和易于了解特征,Java就是一个高级语言。形式:if(a>b)max=a;对于计算机CPU来说,高级语言太笼统了,它需要一个功效强大翻译器来帮助了解。翻译器有两种:一个是编译器,另一个是解译器。它们作用都是将我们用高级语言写好程序翻译成计算机能了解机器语言,所不一样是翻译方式。1.6.1Java历史10/78编译型语言C,C++......;源代码经编译后产生目标代码,即对应于特定平台机器码.是平台相关,可移植性不强.解释型语言Perl,Basic......;将源代码逐行读入并执行.是可跨平台,可移植性强.一个问题:Java属于哪一类?1.6.1Java历史11/78Java发展简史1991年,Java语言诞生在SUN企业,它是由JamesGosling领导GreenProject小组开发,它最初名字是Oak;1994年,GreenProject小组将他们开发转向了Internet,用Oak编写了一系列网络应用程序,像网络浏览器WebRunner等;1995年,伴随Java语言在互联网和多媒体上发展,它得到了全球计算机业高度重视;SUN企业将1.2及其以后版本命名为“Java2”;当前,Java语言正式版本已经发展到1.7版。1.6.1Java历史12/78相关Java几张图片Java标识Java之父JamesGoslingJava吉祥物Duke13/78结构简单:Java语言程序组成与C语言和C++语言类似,摒弃了C语言和C++语言复杂、不安全特征。比如:指针操作和内存管理。另外,Java语言提供了种类丰富、功效强大类库,提升了编程效率。面向对象:现实世界中任何物体都能够看作是1个对象,对象有状态和行为两大特征。Java不是以过程为中心来编程,而是以对象为中心、经过对象之间调用来处理问题。平台无关:使用Java语言编写应用程序不需要进行任何修改,就能够在不一样软、硬件平台上运行。这主要是经过Java虚拟器(JVM)来实现。1.6.2Java语言特点14/78可靠性:因为Java最初设计目标是应用于电子类家庭消费产品,所以要求较高可靠性。比如:Java语言提供了异常处理机制,有效地防止了因程序编写错误而造成死机现象。安全性:现今Java语言主要用于网络应用程序开发,所以对安全性有很高要求。多线程:多线程是指在一个程序中能够同时执行多个简单任务。线程也被称为轻量进程,是一个传统大进程里分出来独立可并发执行单位。C语言和C++语言采取单线程体系结构,而Java语言支持多线程技术。1.6.2Java语言特点15/78J2SE(JavaPlatform2StandardEdition):Java2标准版,java系统标准与关键平台,主要面向个人用户;J2EE(JavaPlatform2EnterpriseEdition):Java2企业版,标准版企业级扩展,面向网络用户;J2ME(JavaPlatform2MicroEdition):Java2微型版,面向嵌入式系统应用。1.6.3JavaPlatform216/78相关Java几张图片17/78Eclipse:由Eclipse小区开发、维护一个开放可扩展平台(其实IBM是幕后老板);JBuilder系列:Borland企业产品,功效很强大,当前其实是加强版Eclipse;NetBeans:由Sun企业建立开放源码可扩展开发平台,和Eclipse竞争激烈;JavaSDK(SoftwareDevelopmentKit):和上面三个不一样,这不是集成开发环境(IDE),集成在JDK中,只能在DOS命令窗口下运行,不过操作简单,轻易掌握。1.7Java语言开发工具18/78Bin文件夹安装好JDK后,打开安装目录\bin文件夹,有20多个exe可执行文件。它们都是Java语言工具,惯用有以下一些:javac.exe:Java编译器;java.exe:Java解释器;appletviewer.exe:JavaApplet解释器;能够用来运行编译好Applet程序。jar.exe:Java语言压缩工具;javadoc.exe:用于生成API文档;1.7Java安装19/78更新系统环境变量因为JavaSDK编译和运行基本上都是在DOS环境下进行,所以为了能在任何提醒符下都能够方便地直接使用\bin文件夹中可执行文件和Java类库,我们需要对系统环境变量进行更新设置。1.7Java安装20/78SDK&JREJRE:JavaRuntimeEnvironment,即Java程序运行环境;我们要想在某台电脑上运行Java程序,那么必须在该电脑上事先安装JRE。SDK:SoftwareDevelopmentKit,是面向开发人员使用工具包,它提供了Java开发环境和运行环境。Java应用程序与Java小程序Java程序能够分为两类:Java应用程序(JavaApplication)Java小程序(JavaApplet)1.7Java安装21/78第2章JAVA基础语法基础基础,与C语言类似22/78第一个程序chapter2\HelloWorld.java23/78类(class)是整个源程序关键部分。在一个类类体中能够定义变量、常量以及方法。main()方法是应用程序执行入口。main()方法头定义是:publicstaticvoidmain(Stringargs[])Java语言是严格区分大小写语言。一个Java程序文件最多只能有一个public类,此时文件前缀名必须和该公有类名字相同。第一个程序说明24/782.1标识符与关键字标识符:_&字母开头后面可加数字驼峰规则、见名知意、区分大小写关键字P2225/782.1注释///*…..*//**….*/26/782.2.1JAVA数据类型四类八种(基础数据类型)booleanbyte/short/int(默认整数)/long(加L)float(加F)/double(默认浮点数)char(转义字符)注意他们取值范围、默认值对象、接口、数组(引用型变量)chapter2\VarClass.java27/782.2.2变量与常量变量:名字类型值常量:不可变变量final只能赋值一次;注意作用域{}之间。chapter2\VarAndFinal.java28/782.2.3数据类型转换表2.4计算转换P30表2.5赋值转换P31尤其说明:boolean不参加强制转换会溢出或损失精度浮点转整数chapter2\VarClass.java29/782.3运算符1.优先级表2.6
P322.运算符++--+=-=*=(数据类型结合)?:instanceof/new/./()P4730/782.4控制结构if/if{}else{}/if{}ifelse{}else{}whilefor(;;)//continue;break;continue标名号Loop:for(){for(){continueloop;}}switch{case1:;break;case2:;break;default:;break;chapter2\TestContinue.java31/78第3章对象和类32/78书写“类”基础33/783.1对象与类1.windows窗口2.弹球3.开车34/783.2定义类修饰符class类名称{//组员变量修饰符
变量类型变量名称[=初始值]//组员方法修饰符
返回值类型方法名称(参数列表){//方法体}}chapter3\Rectangle.java35/783.3变量作用域组员变量局部变量方法局部{}内局部chapter3\VarField.java36/783.4方法重载函数名一样+参数不一样=重载参数不一样:类型次序个数chapter3\OverloadFunction.javaP6637/783.5创建对象引用型变量(指针)P701类名变量名=new结构函数;2类名变量名=函数返回值;3类名变量名;变量名=…4类名变量名=null5new结构函数;(一次引用)ClassNamecn1=newClassName();ClassNamecn2=newClassName();cn1==cn2??38/783.6结构函数类名相同无返回值可重载*默认存在无参数、空实现结构函数**自定义结构函数,则屏蔽默认结构函数综合练习:写一个类、申明一个对象。39/78其它注意问题:40/783.7thisthis()this.指向本身指针。chapter3\TestThis.java例3.8P7341/783.8初始化堆内元素有默认值(类组员变量)栈内元素没有默认值(函数体内)例3.8P7342/783.10对象清理了解垃圾回收机制finalize()方法1.手动调用。2.内存不足时自动调用。43/78修饰符44/783.9staticstatic变量static函数chapter3\TestStatic.java45/783.11访问控制修饰符publicdefaultprotectedprivate46/783.13参数传递基本类型参数传递引用型参数传递chapter3\TestParaTrans.java图3.43.5P78图3.6P79ClassNamecn1=newClassName();ClassNamecn2=newClassName();问题:cn1==cn247/78第4章继承与多态重点章节48/78继承49/784.1继承基础继承是复用类方法基础:1.修饰符private:类内使用,外部不可见main除外protected:继承权限,子类可见;default:包(文件夹)权限,包内可见;public:任意权限2.class子类名extends父类名50/784.1继承基础3.重写函数重点是copy返回值函数名参数列表都相同访问权限只能变宽default<protected<publicprivate,final不能重写chapter4\TestExtends.java51/784.2结构函数调用次序先祖先、再客人、最终是自己例4.3P96默认调用super()super.指针chapter4\TestSuper.java52/784.3继承与组合P87三条53/78OBJECT类顶级类,全部类父类54/784.5toString()默认:返回getClass().getName()+'@'+Integer.toHexString(hashCode())System.out.println(a)==System.out.println(a.toString());自定义:重写chapter4\TestToString.java55/784.6equals()基础数据类型使用“==”比较对象与对象比较存在标准Object标准,内存相同。能够自定义,重写equals()方法chapter4\TestEquals.java56/78多态(重点)57/784.7多态多态:在类继承中父类及子类中能够有多个同名但意义不一样属性、实现方式不一样方法。两种情况:覆盖和重载多态=继承+重载+父类指针指向子类对象。58/784.7向上转型父类指针指向子类对象P92例4.8P93例4.959/784.7结构器中多态方法行为例4.10注意:复习结构方法次序;60/784.7动态绑定chapter4\TestPoly.java61/784.7向下转型chapter4\TestEquals2.java62/78第5章抽象类、接口与内部类63/78抽象类、接口(重点)接口:第二种引用类型变量64/785.1抽象类
abstractclass{}共同代码应该尽可能移动到抽象类中数据移动方向是从抽象类到详细类abstractreturnTpyeabsMethName(ParaList);//{}抽象类不能实例化、必需被继承抽象方法必需在抽象类中抽象方法不能是private。例5.3P10065/785.2接口极度抽象类,没有任何方法体方法interfaceintfName{[staticfinal]varName=varValue;abstractfunction;}classAimplementsInterfaceB{}66/785.2接口是一个引用类型Interfaceif=newClassImpIF();Class(ClassImpIF)implementsinterface(if);类似:父类指针指向子类对象。例5.5P10567/78课堂练习有三个动物A1,A2,A3,每只动物叫声不一样(打印不一样文字)。写一个函数参数为一只动物,命令这只动物叫一声,要求依据传入动物不一样,打印对应文字。68/785.3接口能够有继承例5.6P1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年学法达人赛测试题及答案
- 2026年踩踏 救护 测试题及答案
- 2026年古 典名著测试题及答案
- 2026年华电集团测试题及答案
- 2026年中职语文周测试题及答案
- 记者岗位新闻招聘试题及答案
- 2026年广东韶关市九年级学业水平模拟化学试卷附答案
- 企业叉车常见试题及精准答案
- 铁饼理论拔高试题及答案展示
- 2026年生产专业实务金属非金属矿山安全综合模拟试题及答案详解
- 淘宝代理网上销售合同
- 2026水利五大员(材料员)考试试题及答案
- 航空服务中的用户画像分析-洞察与解读
- 居民自建桩报装承诺书(无业委会)
- 宜宾市科教产业投资集团有限公司及其子公司2026年第一批员工公开招聘笔试参考试题及答案解析
- 特殊儿童精细动作训练
- 从“做题家”到“领跑者”:衡水中学拔尖创新人才培养策略
- 铸造车间管理制度培训
- 食品质量安全培训
- 混凝土道路施工课件
- 人工授精合同范本
评论
0/150
提交评论