JAVA语言基础知识.pdf
《JAVA语言基础知识.pdf》由会员分享,可在线阅读,更多相关《JAVA语言基础知识.pdf(99页珍藏版)》请在咨信网上搜索。
1、第一讲Java语言概述2Java的特点*平台独立性和可移植性面向对象(OO 3OOP和POP编程思路的差别,所有计算机程序都由两类元素组成:代码和数据 程序两种写法:以代码为核心或以数据为核心进行组织编写。1.围绕“正在发生什么”编写一面向过程的编 程2.围绕“谁将被影响”编写一面向对象的编程4OOP和POP编程思路的差别,纯粹面向过程的编程(1)程序具有线性执行的特点。(2)面向过程的程序可以认为是代码作用 于数据。,面向对象的编程。(1)围绕它的数据(对象)和为这个数据严 格定义的接口来组织程序。(2)面向对象的程序实际上是用数据控制对 代码的访问。5第二讲标识符,保留字和数据类型第三讲运
2、算符、表达式和语句6第四讲类与对象1、类的基础2、对象的声明与使用3、变量与对象的生命周期4、进一步研究方法和类7类口类就是对象的模板,它定义一 类对象所能共同拥有的属性和共 同的行为。口对象就是类的实例。注:对于面向对象的程序而言,一个类可以生成 若干个类的对象,先有类的定义才有属于该类的 对象,不存在不属于某个具体类的对象。8构造方法A构造方法在对象创建时被调用;A构造方法与类同名;A构造方法没有任何返回值。9课内练习:一一 建立类模型时的思维抽象过程课本P61编写水仙花数类,要求如下:/设计该类的构造方法;,设计方法来存取类中的属性;/设计方法以判断是否水仙花数。注:将main函数写在另
3、外的Test类中实例化水仙花数类,并通过调用对象的方法来输出水仙花数。10方法重载在JAVA中,同一个类中的2个或2个 以上的方法可以有同一个名字,只要它 们的参数声明不同即可。该方法就被称为重载(overload),这个过程称为方法重载(method overload)。11static关键字类中被static修饰的属性或方法,完全 独立于该类的任何对象,能够在类的任 何对象被创建之前访问。当声明一个对象时,并不产生static变 量的copy,所有对象共享同一个static变O12static关键字声明为static的方法有以下几条限缶U:,它们仅能调用其他的static方法;/它们只能访
4、问static属性;/它们不能以任何方式引用this或super;13命令行参数可以通过命令行参数将信息传递给main()0命令行参数是程序执行时在命令行中 紧跟在程序名后的信息。命令行参数作为字符串存储在传递给 main。的String数组中。14练习:课本P108利用static变量设计实例计数器。该计数器可以统计并判断该类创建的 对象的次数是否大于3。15第五讲数组与字符串P134第11题16第六讲继承1、继承的基本概念2、关键字super的使用3、重载与改写4、创建多级类层次5、何时调用构造方法6、深入探讨Father f=new Son();7、关键字final的使用171、继承的基
5、本概念被继承的类叫超类或父类(superclass),继承超类的类叫子类(subclass)使用关键字extends继承一个类例如:A是一个类,使用关键字extends来创建 A的子类Bclass A.class B extends A 181、继承的基本概念-成员的访问和继承A子类可以继承父类中的所有成员(包括 父类中所有静态与动态的属性与方法),但是它不能访问被声明成private的成员。注:(1 构造函数不被继承!2 在java中规定:-个父类可以有多个 子类,一个子类只能有一个父类。192、关键字super的使用关键字super允许在子类中调用父类的构 造函数。202、关键字super
6、的使用一一子类中构造方法的调用顺序A调用子类的构造方法时,无论子类的 构造方法中是否用到了super。,每个父 类默认的(或无参数的)构造方法都将 执行。nside As constructor,nside BJs constructor,nside Cs constructor.213、改写(Override)与重载(Overload)子类中某个方法的名字与父类中的某I个方法名字一样,但二者的参数不同。这时子类重载了父类中的某个方法。22子类中某个方法的名字与父类中的某 个方法名字一样,参数也一样。这时子类 改写(或覆盖)了父类中的某个方法。父 类中定义的方法将被隐藏。关键字supe允许在子
7、类中调用父类中被 子类覆盖的成员。237、关键字final的使用关键字final有三个用途:(1)创建一个常量。如:final int NUM=100;(2)使用final阻止方法被子类覆盖。如:final void meth();247、关键字final的使用使用final阻止类被继承。如:final class A.253、继承的意义和用途A继承是面向对象的一块基石,它允许 创建分等级层次的类。继承可以大大提高程序代码的可重用 性,并可缩短软件的开发周期。同时,继承又对程序的删改和增添提供了方便,从而大大提高了程序的可扩展性和可维 护性。26课内练习A某高等院校中的学生可以分为两类:本科生
8、(Undergraduate)和研究生(Graduate)。凡是学生都有名字,年龄和学位。其中本科生拥 有专业,研究生拥有研究方向。请编写一段程序,可以用于输出学生信息。注:该程序应具备一定的扩展性,如其他院校可能 拥有专科生,博士生,本科生也可能分为工学方向 和理学方向等。27第七讲接口与程序包1、抽象类的概念2、接口3、程序包4、访问控制28抽象类与接口抽象类或接口位于类层次结构中的 顶层。抽象类或接口中所定义的抽象方法 决定了类层次结构是否能顺利地通过 继承来解决问题域中的问题。29抽象类 使用关键字abstract描述一个抽象类或 抽象方法。如:abstract class A.abs
9、tract void callme();30接口 使用关键字interface定义一个接口如:interface interfaceA void callbackQ;使用关键字implements可以让一个类实 现一个接口或同时实现多个接口(多继承)O31程序包(package)包的引入增加了访问控制的另一个维度。类成员访问表private 蕨 J默认械员protected 颇public 定员,同一耕可如1?1?B、正。B.封 同一包中再候可见否B 1 EBA8、旧同一包中甜日凑可如否B筌B 正。B 正。)洞包中对子类可如否。否日、正。B.无。福包中林子类魏辱和否B 正+32课内练习:1.创
10、建Rodent(啮齿动物):Mouse(老鼠),Gerbil(沙鼠),Hamster(大颊鼠)等的一个继亲分级结构。在基础类中,提供适用于所有Rodent的方法,并在衍生类中覆盖它们,从而根据不同类型的 Rodent采取不同的行动。创建一个Rodent数组,在 其中填充不同类型的Rodent,然后调用自己的基础 类方法,看看会有什么情况发生。33第,饼异母*t理8.1 异常处理基础8.2 异常类型8.3 异常处理8.3.1 运行时异常(隐式处理)8.3.2 非运行时异常(显式处理):try-catch-finally8.3.3 非运行时异常(显式处理):throw与throws34异常处理基础
11、异常处理可以有以下几种:/对运行时异常(P208)可以不做显式的处理;/对非运行时异常必须做显式的处理:使用try-catch-finally语句捕获异常;(2)通过throws子句将异常抛出给上一级处理。35异常处理下面是显式的异常处理的通常形式:try/被监视的可能会产生错误的代码块)catch(Exception exOb)/捕捉到某个异常对象exOb后对该异常的处理)finally/无论try代码块中的异常是否存在,绝对都要执行的代码。36异常处理1、通过throw关键字手动抛出明确的异常2、利用throws子句将异常抛出给上一级处 理37异帘左健系关系中的特殊健父类抛出的异常范围应比
12、子类大。38第夕耕Java的输入输出流9.1流概念9.2 Java用于输入输出流的类9.3数 据流的使用39输入流1.输入流通过打开一个连接到数据源(文件、内存或网 络端口上的数据)的输入流,程序可以从数据 源上顺序读取数据。40输出流2.输出流通过打开一个连接到目标的输出流,程序可以 向外部目标顺序写数据。A stream41Java用于输入输出流的类java.io中的基本流类:Byte Streams Character StreamsJInputStream ReaderOutputStre:un Writer说明:它们是抽象类,不能直接创建对象。42File 类File类的对象主要用来
13、获取文件本身的一些信息,如:文件所在的 3录、文件的长度、文件读写权F艮等,但是不涉及对文件的揍写操作。43课后练习:字符流的使用使用文件流实现简单的留言板:留言信息由作者,标题与留言内容三个部分组 成。A通过标准输入流System,in获取用户输入的三 部分信息,使用BufferedWriter将留言信息保 存在d:message.txt文件中。A使用B u ff e red Re a d e将留言信息逐行读出。44课后练习:提示:1、存入文件的每条留言的结构为:author&title&contentn2、jS:BufferedReaderreadLine()ii$取出留言后,使用Stri
14、ngTokenizer类g1中的留言结构进行分析,通过 三个部分,分别显示。1字符析取出留言的3、如何为每条留言编号?如何将新留言插入文件 尾部(追加记录)?45RandomAccessFile 类 InputStream类和Outputstream类 都是对 文件进 行顺序读/写操作。RandomAccessFile类允许对 文件的内参进行随机读/写操作。RandomAccessFile流的指向既可以作为源也可 以作为月的地。46课内练习使用RandomAccessFile类实现留言板中的用户注册功能:A用户信息由用户名,密码与性别三个部分组成。通过标准输入流Sy ste mJn获取用户输入
15、的三 部分信息,使用RandomAccessFile类将用户 信息追加到d:u se r.txt文件中。保证新追加的用户与之前每个用户的用户名不 籍同47课后练习使用RandomAccessFile类实现留言板中的用户登录 功能:通过标准输入流System,in获取用户输入的用户名与密 码;征用 RandomAccessFile 类将用户信息从 d:user.txt 文件中逐条取出,用StringTokenizer分析每一条user 信息的用户名与密码是否与用户输入的一致。A登录成功后,该用户发表的所有留言的用户名为登录的 理户名。没有登录的用户,默认使用“guest”名字留具岩将登录,注册,
16、添加留言,查看留言和退出系统功 能整合在一起。48第7。锦囹形用户界面10.1 Applet 基础10.2 Applet 的执行10.3简单的Applet显示方法4910.1 Applet 基础Applet与Application的主要区别在于它们的执行方式 不同:A Application是使用命令行命令直接运行,从其main()方法开始运行的;AApplet则是在浏览器中运行的,首先必须创建一个 HTML文件,通过编写HTML语言代码告诉浏览器载 入何种Applet以及如何运行。5010.1 Applet 基础Applet的生存周期方法5110.1 Applet 基础-Applet的生存周
17、期 Applet的生命周期-;-初始态(瞬态)第一次装入,构造applet类,调用init()方法 调用start。方法y运行态离开Web页面:最小 化或装入其他页面,调用stop。方法 停止态关闭浏览器,调用stop。、destroy。方法消亡态重新装入或改变页面 大小或返回Web页面,调用start。方法52课内练习编写一个Applet,要求如下:利用Color的构造函数Color(float redjloat green,float blue)产生随机颜色的字符串;在HTML窗口中使用4Pmet输出随机颜 色的字符串“欢迎崔用留詈板 字 符串的字体为宋体,类型为加粗,大 小为30镑。每当
18、窗口改变时,字符串的颜色都会改变。510.7 AWT事件类型o低级事件ComponentEvent(组件事件:组件尺寸的变化,移动)ContainerEvent(容器事件:组件增加,移动)WindowEvent(窗口事件:关闭窗口,窗口闭合,图标化)FocusEvent(焦点事限焦点的获得和丢失)KeyEvent(键盘事件:键按下、释放)MouseEvent(鼠标事件:鼠标单击,移动)O高级事件(语义事件)ActionEvent(动作事件:按钮按下,TextField中按Ente键)AdjustmentEvent(调节十件:在滚动条上移动滑块以调节数 值)ItemEvent(项目事件:选择项目
19、,不选择“项目改变”)TextEvent(文本事件,TextFiled中文本对象改变)5410.7 AWT事件处理模型组件(事件发生者)触发一个相应类型的事件此事件由相应类型的Listene(事件监听者)接收并处理事件监听者、按下Button 触发 ActionEvent e事件发生者ActionListener、并做处理,551019 布局(Layout Java.awt包中共定义了 5种布局管 理器类,它彳门分另I是FlowLayout、BorderLayout CardLayout Grid Layout和Grid Bag Layout。每个布局管理器类对应一种布局策 略。当一个容器选定
20、一种布局策略 时,它应该创建该策略对应的布局 管理器类的对象,并将此对象设置 为自己的布局管理器。5610.9 布局(Layout 没有指明布局管理器,贝Upanel与applet 都使用磁省的FlowLayout希局策略。而 Window,Frame,Dialog 使用 BorderLayout 布局策略。没有布局管理器的容器,其中的对象会 互相覆盖、遮挡,影响使用,所以必须 为每个容器设置一个合适的布局管理器。容器设置布局使用方法:setLayout(布 局对象)57课后练习A使用applet的布局策略分别实现留言板的用 户登录,用户注册,发表留言和查看留言四个 界面。A通过处理各个界面中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 语言 基础知识
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。