欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    Java程序设计基础.docx

    • 资源ID:11168903       资源大小:40.70KB        全文页数:36页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Java程序设计基础.docx

    1、Java程序设计基础Java程序设计教案么老师2012年07月31日目录目录 II第一章 Java概述 第二章 Java语言基础 第三章 Java面向对象的程序设计 第四章 Java异常处理 第五章 Java GUI程序设计 第六章 Java Applet 第七章 Java多线程 第八章 Java 数据流 第九章 Java网络应用 第一章 Java概述一. Java的产生1 1991年SUN公司为Green项目设计了oak语言准备用于家电控制。2 1992年投标失败(华纳机顶盒,SGI),受Mosaic启发,编写了HotJava浏览器。 3 1995年Sun公司正式推出Java1.0, 目前版

    2、本1.6,2009年推出.4 2009年4月21日,sun被oracle以74亿美元收购。二. Java平台:Java在1.2版改革巨大,通常将1.2版及以后的版本称为Java 2,又分成:J2SE Java 2 Standard Edition 用于台式机及工作站J2EE Java 2 Enterprise Edition用于企业级服务器平台J2ME Java 2 Micro Edition用于手机,等个人消费产品在1.5版以后,不再称Java2, 三个平台改名为JavaSE,JavaEE,JavaME.三. Java 开发工具1. JDK 命令行工具(Javac , Java)2. 流行开

    3、发工具Eclipse, JCreater, NetBeans, IntelliJ-IDEA3. 专业开发工具Borland JBuilder4. 著名的J2EE Servers: Tomcat,BEA Weblogic, IBM Websphare四. Java 语言特点1. 语法简单,功能强大,完全面向对象,有C+的强大性,去掉C+中的指针,结构;2. 分布式网络应用能力(内置TCPIP,HTTP,FTP等网络协议库)与安全性(语言定义,字节码检查,解释执行三级检查机制);3. 基于二进制字节码的跨平台(硬件及操作系统双平台)的无关性(Write once, Run anywhere),JV

    4、M虚拟机解释执行,相比较CC,Java可称植性极高;4. 高效率的字节码解释执行(速度达到C的10%)+即时编译JIT(HotSpot);5. 语言级别而不是操作系统级别的多线程;6. 基于字符而不是地址的动态符号加载, 动态执行,对类的代码覆盖有重要意义;7. 自动垃圾回收,理论上不会产生内存泄漏;不需要程序员维护内存释放。8. 远程访问能力和软件的易维护;9. 丰富的API文档和类库;10. 和Microsoft .Net平台的竞争关系;五. Java的运行环境及配置1. JDK的下载与安装()2. JDK中的命令行java,javac,javap,javadoc3. 配置环境变量clas

    5、spath=. (JDK1.42以后的版本中不配置也可以)4. 配置环境变量path= D:j2sdk1.4.2bin5. 一个简单的Java Application/Hello.javapublic class Hello public static void main(String args) System.out.println(“Hello java”); 6. 命令行参数编译javac hello. java;windows下文件名不分大小写加载运行java Hello,Hello是类名,区分大小写7. 常见错误(1.path配置错误2.public类名与文件名一致3.加载类名区分大

    6、小写4.一个文件中只能有至多一个public类5.main函数必须是public static void8. Java的API文档9. IntelliJ-IDEA:(psvm+TAB自动出主函数)10. Eclipse:设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。快捷键:ALT:弹出快捷列表,syso+ALT+/即可自动产生System.out.println();CTRL: 本行注释 。Ctrl + D : 删除本行第二章 Java语言基础一. 标识符、关键字和数据类型1 基本语法单位1) 空白、注释新增加的文档注释,文档生成工具j

    7、avadoc及语句和块2) 关键字:P20注意,没有sizeof算符3) 标识符:字母,数字,下划线,$4) java编程风格(变量,类,常量命名,缩进,块)2 基本数据类型1) 基本数据类型及取值范围及对应的包装类P22,图P21boolean: true, false -Boolean byte: -128+127 -Bytechar: 16bit unsigned integer UNICODE -Charactershort: 16Bit signed integer -Shortint: 32Bit signed integer -Integerlong: 64bit signed

    8、integer -Longfloat: 32bit -Floatdouble: 64bit -Double 2) 取值范围常量:Byte.MAX_VALUE, Short.MAX_VALUE. P233) 类型转换低精度向高精度转换时能自动转换,反之则要进行强制类型转换.boolean类型和int类型不兼容,不能转换,强制转换也不行。4) 变量、说明和赋值(和C+类似,只是没有全局变量)5) final常量3 复合数据类型1) 类 2)数组 3)接口二. 表达式表达式由操作数和运算符组成。1 操作数1) 常量: A, t,123, 45L, 34.67f2) 变量:只有类成员变量和函数内局部变

    9、量,没有全局变量。3) 成员变量自动初始化(初值为0,null或false),自动变量未初始化不能引用4) 变量作用域P44注意和C和不同,Java不允许存在多重同时可见的局部变量,但允许成员变量和方法局部变量同名同时存在2 运算符1) 基本运算符(算术%运算支持浮点数,关系,逻辑,位运算基本同C/C+)2) 逻辑右移算符(逻辑右移)3) 移位byte, short(移位前都自动转换为int), int以32为模,long以64为模4) 其它运算符instanceof,new,。5) 运算符及优先级注:没有逗号运算符P493 表达式的提升和转换三. 流控制1 表达式语句和C不同,无作用表达式+

    10、分号不能构成语句,比如i; i+1;2 块语句 就是复合语句3 分支语句 if注:条件表达式只能是逻辑值,不能是算术值,C程序如何移植?4 循环语句 for 尽管没有“,”算符,但沿用了C的写法,允许同时定义多个变量或对多个变量初始化,while ,do while5 Switch 和循环语句中的 break ,循环中的continue 标号P59四. 数组和字符串1 数组1) 数组说明 int a;int a;“”的位置无所谓,不能静态数组如int s102) java中的数组名是变量(对象)。在C中是常量,是数组的地址3) 创建数组 int a = new int10;动态初始化,内容自动

    11、清0null(对象)4) 数组初始化 int a = 1,2,3; 静态初始化5) 多维数组 int a = 1,2,3,4,5,6;写成int a,int a都合法int a= new int34;int a =new int3; 写成int anew int 4不合法a0=new int2;a1=new int3;a2=new int 5java实际上没有多维数组,多维数组只是数组的数组,由于java数组的动态性,“多维数组”实际上可以不是矩阵数据,即每维长度都是可变的6) 数组的引用aij 引用时,不能写成iaj,ija7) 数组边界 a. length length是java自动为数组

    12、生成的final常量8) 数组复制System.arraycopy() , P762 字符串类型1) 概述:String和 StringBuffer(P82)2) 说明及初始化String s = “Hello”;java里面,出现的所有常量字符串会自动放进常量池(constant pool)且不会重复3) 字符串的引用(对象引用P38错误)4) 字符串处理(连接,比较,修改P83)3 Vector类1) 创建Vector v=new Vector(容量,增长量); 2) 添加,删除,修改,查表元素add, removeAt, set, get/elementAt/indexOf/contai

    13、ns3) 其它函数P79P80第三章 Java的面向对象特性一. 抽象和封装和类1 类定义及封装类有权限,其它同C2 成员方法每个方法的权限要独立设定,其它同C3 创建对象和对象引用Java中,所有的对象变量定义都只是引用,而不是对象本身4 this引用相当于C的this指针,VB的Me引用,Delphi的self引用5 null对象对一个对象赋值为null用来清除对该对象的引用;6 对象数组A a=new A10;产生一个对象数组,每个成员都是一个对象引用,值为null二. 方法重载(overload)1 同一个类中,可以存在多个同名方法。2 这些同名方法必须参数个数不同或至少有一个类型不同

    14、。三. 对象的构造和初始化1 在创建对象实例时,类的所有成员自动清成二进制的0/null/false2 显式成员初始化和C不同,类的成员可以在定义的时候指定初值3 构造方法和类同名方法,可以有参无参,无返回值,同C4 默认的构造方法和类同名,无参数,无返回值5 如果没定义无参构造方法,系统会自动产生这个方法,如果定义了非默认的无参构造方法,系统将不再产生无参构造方法同C。6 在构造方法中调用其它构造方法调用格式:this(参数),必须在首行调用 7 没有类似C的拷贝构造方法形参是值传递或引用传递,不用拷贝8 finalize方法(Object. finalize()在对象内存被垃圾回收器回收之

    15、前调用9 static 和final 成员1)static成员属于类,不属于对象实例,2)static 方法没有this引用,又称类方法。3)final数据成员只能被显式初始化或在构造方法中初始化(仅能赋值一次,位置不限定4)final方法不允许派生类覆盖10 类中的static 语句块在类加载时被调用,如果存在多个static块,则它们被以声明的顺序引用,但都先于构造方法被调用。11 自动垃圾回收及手动回收(System.gc()12 例Date,Point四. 继承1 单重继承extends关键字java不支持多重继承2 Java中所有的类都隐含继承于Object类,或者说Object类是

    16、所有类的基类。3 super关键字派生类对基类的称呼4 方法覆盖(override),派生类同名方法自动覆盖基类中同名方法非final的和C不同,方法覆盖不会覆盖基类中其它重载的同名方法5 赋值兼容性派生类的对象引用可以赋值给基类对象引用6 多态性所有的非静态方法都是虚方法7 运行时支持RTTI,instanceof objA instanceof ClassB8 强制类型转换(父类的引用转成子类的引用)9 final 类和 final方法 用于不可继承和不可覆盖10 abstract 类和abstract 方法1)只有方法声明,没有方法体的方法必须说明为abstract方法;2)abstra

    17、ct类不能产生对象实例;3)含有一个以上abstract方法的类必须是abstract类;11 interface 和implements1)接口所有成员都是public的,即使没有声明为public2)实现相应接口也必须为public3)实现一个接口必须实现该接口的所有方法4)接口也可以继承其它接口,而且可以继承多个接口5)一个类可以同时实现多个接口,但至多只能继承一个类6)接口中可以定义数据成员,但它自动成为static ,final ,public的,因此,可以用接口定义一组常量,应避免多个接口定义相同名字的常量,否则一个类同时实现多个接口的时候可能会产生冲突,一旦发生冲突就只能用“接口

    18、名.成员常量”的方式去访问。7)接口可以嵌套,实现一个接口不需要一定实现内嵌接口 interface IA void f(); interface IIA void g(); 8)接口使用示例:interface IA void Draw();interface IB void Move();interface IConst int a= 1;int b=2;interface IAB extends IA, IB, IConstclass IMP extends Parent Implements IA,IB public void Draw() public void Move()12 内

    19、部类1)内部类是其所在类的非静态成员,持有其所在类的this引用。 class Outer class Inner class Hello public static void main(String args) new Outer().new Inner(); 2)内部类可以使用包含它的那个类的成员,原因见1。3)内部类成员方法调用外部类同名成员方法:Outer.this.Method4)内部类成员方法可以使用外问类的同名变量:Outer.this.varible5)内部类不能在其所在的外部类的静态成员中被直接使用(如创建对象实例),因为静态成员没有this引用,而内部类要求有一个this引

    20、用。5)内部类本身不能含有静态成员,除非内部类本身是静态类(见14.静态类)6)在方法内定义的内部类不能使用方法中的变量,除非那个变量是final的。13 匿名类1)匿名类是一个内部类,是对已有类继承的子内部类。2)匿名类定义的新方法无法被外部调用,因为该类是从其它类继承而来,而本身没有名字,无法进行强制类型转换(从其类到派生类)3) 匿名类不能定义构造函数,因为它没有名字,如果基类构造需要参数,可以直 接传给基类,如 new A(3) void f() ;4)匿名类如果使用方法的局部对象,要求该对象是final的,参见内部类6)。14 静态类1)静态类只能是内部类,是其所在类的一个静态成员类

    21、,即不持有所在类的this引用,所以不能访问所在类的成员。2)静态类的成员可以是静态成员,也可以是非静态成员。五. 包(Package)1 package 概念相当于C中的namespace,使用路径名作为包名2 使用其它包中的类3 import导入其它的包及系统包4 jar包产生:jar cvf Hello.jar *.class A/ *.class 产生Hello.jar包修改:Manifest.mf文件,添加内容:Main-Class: Hello或先制作好MANIFEST.MF文件,然后执行:jar cvfm Hello.jar MANIFEST.MF *.class A/*.cla

    22、ss执行:java jar Hello.jar六. 权限(public protected default private)1 同一个文件中只能有一个public的类并且和文件同名,区分大小写2 权限变化权限访问者publicprotecteddefault(friendly)private同一个类中可以可以可以可以同一个包中可以可以可以不同包中子类对父类可以可以不同包中可以3 派生类的方法权限不能低于基类,即权限不能弱化(weaker)第四章 Java异常处理一. 异常概述 二. 异常例子(JVM) P84,数组超界异常三. 关键字:try, catch, finally, throw 一般

    23、形式: try / Some Code maybe throw Exception /只能抛出Throwable的子类对象,不能抛出其它对象。 catch(Exceptiontype1 e) /如果 Exceptiontype1是Exceptiontype2的子类,/则对子类异常的捕获必须写在基类的前面 catch(Exceptiontype2 e) finally 四. 公共异常1. ArithmeticException2. NullPointerException3. NegativeArraySizeException4. ArrayIndexOutOfBoundsException5

    24、. SecurityException五. 抛出异常throw SomeException;和C不同,java对异常的处理要求是强制性的,如果某方法有抛出异常的语句或者调用了可能抛出异常的其它方法,那必须以下列两种方式之一处理:1.使用try/catch语句块捕获异常并处理。2.如果不想处理,就必须在该方法中声明该方法可能会抛出异常,让异常向上继续传递 void somefun() throws SomeException throw SomeException; 3. 例外情况,对于RuntimeException/Error或其子类,由于是系统运行时可能产生的异常,由JVM来处理,这时用户

    25、不必捕获,例如NULLPointerException。尽管这类异常也可以捕获,但一般不推荐,因为可能会掩盖了系统的问题。六. 创建自己的异常class MyEx extends Exception MyEx(String s) super(s); public class Hello public static void main(String args) throws Exception throw new MyEx(KKKKK); 第五章 Java GUI程序设计一. 概述1 AWT (Abstract Window Toolkit)和Swing2 Java的GUI由组件(compone

    26、nt)和容器(container)组成3 组件的定位及布局管理器(layout manager)1) 组件的容器含有一个实现了某个LayoutManager接口的实例2) 可以用setLayout(null)来阻止布局管理器的自动布局,然后用setSize(),setLocation(),setBounds实现自已布局3) 创建自已的类实现LayoutManager接口4 组件的大小也是由布局管理器自动调整的二. 框架(Frame)是Window类的子类,是一个带标题栏并且可以改变大小的窗口1 创建一个简单的Frame2 继承Frame3 加入Panel三. 布局Java中包含几种布局管理器1

    27、 FlowLayout (Panel, Applet默认布局管理器)2 BorderLayout (Window,Dialog,Frame默认布局管理器)3 GridLayout (网格式布局管理器)4 CardLayout (卡片式管理器,也称为向导(Wizard)模式管理器)5 BoxLayout (水平或垂直线式管理器)6 因为每个容器都有布局管理器,所以可以嵌套布局四. 事件模型1 事件来源2 事件处理JDK 1.0版本已过时1) Component.HandleEvent(Event e) 重载这个函数,实现系统不关心的消息,当然如果不必要也可以不重载2)重载事件函数,如public

    28、 void mouseMove(Event e,int x,int y)3 事件模型(委托模型)JDK1.1及以后版本每个组件要自已监听消息,能过addXXXXListener 实现,只有对事件加了监听的组件才能收到消息.1) Listener 接口 类别Interface方法ActionActionListeneractionPerformed(ActionEvent)ItemItemListeneritemStateChanged(ItemEvent)Mouse MotionMouseMotionListenermouseDragged(MouseEvent)mouseMoved (Mos

    29、ueEvent)Mouse ButtonMouseListenermousePressed (MouseEvent)mouseReleased (MouseEvent)mouseEntered (MouseEvent)mouseExited (MouseEvent)mouseClicked (MouseEvent)KeyKeyListenerkeyPressed (KeyEvent)keyReleased (KeyEvent)keyTyped (KeyEvent)FocusFocusListenerfocusGained(FocusEvent)focusLost(FocusEvent)AdjustmentAdjustme


    注意事项

    本文(Java程序设计基础.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开