




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,JAVA语言程序设计,课程提纲,语言语法基础-第2章 语言面向对象的特征-第3章 异常和异常处理-第6章 线程-第7章 输入和输出-第9章,2,3,什么是JAVA?,JAVA Technology 编程语言(Programming Language) 运行平台(Platform),4,JAVA编程语言的特点 简单(Simple) 面向对象(Object oriented) 解释性(Interpreted) 平台独立和可移植(Architecture neutral & Portable) 鲁棒(健壮)和安全(Robust & Secure) 多线程(Multithreaded) 分布式(网络)(Distributed) 高性能(High performance) 动态(Dynamic),5,简单(Simple) 快速学习,Java不存在指针 面向对象(Object oriented) 注重于数据和操作数据的方法,而不是流程 类(class)是数据和操作数据的方法的集合 层次化结构的类、对象、消息、继承等 解释性(Interpreted) Java编译器生成字节码,Java解释器执行字节码 链接过程简单,仅仅将新的类装载(load)入运行环境(Java解释器),6,平台独立(Architecture neutral)和可移植(Portable) Java编译器产生的字节码(bytecode)可运行在异种网络环境中(不同的硬件系统和不同的操作系统) Java程序在不同的平台中行为一致,不存在数据类型的不一致等现象,7,平台独立(Architecture neutral)和可移植(Portable),8,鲁棒/健壮(Robust)和安全(Secure) 可靠的语言: compile-time checking和run-time checking 内存管理简单,“new”构造对象,对象释放(automatic garbage collection) 网络环境的应用不会被产生入侵行为,Java运行环境为Java程序构造一个个砂盒(Sandbox),9,多线程(Multithreaded) 线程类: java.lang.Thread/Runnable/ThreadGroup等 原语支持: synchronized、wait()、notify() 分布式(Distributed) 支持网络应用, .* URL类: 获取WEB网页 Socket类、ServerSocket类: 实现客户/服务器(Client/Server)应用 DatagramSocket类、DatagramPacket类: 实现组播(Multicast)应用例: 视频会议,10,高性能(High performance) 解释性的语言,没有C语言快 “Just-In-Time” JIT编译器,在运行时将Java字节码转变为机器码 Java HotSpot Compilers 动态(Dynamic) Java语言在执行的链接(link)阶段是动态的 类(class)仅在需要时被链接 被链接的代码模块可以有不同的来源,从本地或从网络,11,平台(Platform) 程序运行的硬件和软件环境 操作系统平台 Windows UNIX: Solaris、FreeBSD、Linux MacOS 操作系统与硬件的结合 JAVA运行平台(Platform) JAVA虚拟机(Java Virtual Machine, Java VM) Java解释器Java开发工具或可运行applet的Web浏览器 JAVA应用编程接口(Java Application Programming Interface, Java API),12,J2SE Platform (Java 2 Standard Edition) Java Runtime Environment (JRE) Java虚拟机、库函数、运行Java应用程序和Applet所必须文件 Java 2 SDK (Development Kit)JRE的超集,包含编译器和调试器等用于程序开发的文件 JAVA虚拟机、JAVA应用编程接口和系统平台的关系,13,JAVA可以做什么? 基本: Objects, strings, threads, numbers, input和 output, data structures, system properties, date和time等 网络应用: 实现基于URL/TCP/UDP的网络应用 国际化应用: 实现程序的本地化,并以适当的语言显示 安全应用: 电子签名、公钥和私钥管理、访问控制和用户证书等 软件构件 对象串行化: 实现远程方法执行(Remote Method Invocation,RMI) Java数据库连接(Java Database Connectivity, JDBC): 提供统一的方式访问关系型数据库 WEB应用: JSP(Java Server Page)和Servlet,14,为什么选择JAVA? 快速上手 (Get started quickly) 写较少的代码 (Write less code) 写更好的代码 (Write better code): garbage collection (防止内存泄漏),面向对象、JavaBeans构件机制、其他API复用代码,减少bugs 开发程序更快 (Develop programs more quickly) 避免平台依赖性 (Avoid platform dependencies with 100% Pure Java) 编写一次,随处运行 (Write once, run anywhere) machine-independent bytecodes 发布软件更容易 (Distribute software more easily): 指对软件的更新,利用动态加载功能,一处改动,自动更新,不用重新编译整个程序,15,JAVA程序的种类,Java小应用程序(Java Applet) 在Web浏览器(内嵌Java虚拟机)中运行特定的HTML文件 HTML文件包含有特定标记 Java应用程序(Java Application) 独立的Java程序, 一般在DOS窗口中运行 程序入口方法: public static void main(String args) Java Script 嵌入在HTML文件中的脚本语言 特定标记 Netscape引入javascript,16,简单的JAVA应用程序,Java源程序文件扩展名为“.java” Java字节码程序文件扩展名为“.class” /* * HelloWorld1 class实现一个应用 * 将“Hello World!”显示到标准输出 */ import java.lang.System; public class HelloWorld1 public static void main(String args) / Display “Hello World!“ System.out.println(“Hello World!“); ,17,定义类文件 关键字class表示要定义一个类(模板),包含数据变量和方法 关键字import表示引入程序外部定义的类 /* * HelloWorld1 class实现一个应用 * 将“Hello World!”显示到标准输出 */ import java.lang.System; public class HelloWorld1 public static void main(String args) / Display “Hello World!“ System.out.println(“Hello World!“); ,18,类名称与Java源程序名一致 class MyClass . . . MyClass.java 区分大小写,19,注解方式(Comments) /* */ 程序内的任意位置 /对本行注解 /* * HelloWorld1 class实现一个应用 * 将“Hello World!”显示到标注输出 */ import java.lang.System; public class HelloWorld1 public static void main(String args) / Display “Hello World!“ System.out.println(“Hello World!“); ,20,主方法(main Method) 每个Java应用程序必须有且只能有的一个方法,程序执行的入口 格式固定 /* * HelloWorld1 class实现一个应用 * 将“Hello World!”显示到标注输出 */ import java.lang.System; public class HelloWorld1 public static void main(String args) / Display “Hello World!“ System.out.println(“Hello World!“); ,21,类和变量的引用 类(java.lang.System),System类的一个变量out 变量out是PrintStream类的一个实例,PrintStream类实现标准输出流 引用实例out的方法println() 变量和方法的引用通过“.”实现 public class HelloWorld1 public static void main(String args) System.out.println(“Hello World!“); 所有的Java类默认都引入java.lang.*,22,书写规范 花括号对“”类,方法 语句分号“;”结尾 对齐和缩进 区分大小写 /* * HelloWorld1 class实现一个应用 * 将“Hello World!”显示到标准输出 */ public class HelloWorld1 public static void main(String args) / Display “Hello World!“ System.out.println(“Hello World!“); ,23,JAVA运行体系 源代码 Source code (.java file) javac: Lexical Analysis & Parsing + Type-checking Byte code (.class file) JAVA编译器对源代码进行词法分析和类型校验,生成字节码文件 java(JVM): Verification (essentially repeating static checks) + (Interpretation OR Compilation + Loading
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 腔镜手术基本操作及相关知识试题与答案
- 江苏省如皋市南片区八校联考2026届英语九年级第一学期期末学业质量监测模拟试题含解析
- 2026届黑龙江省齐齐哈尔市克东县化学九年级第一学期期末监测模拟试题含解析
- 江苏省启东市东安中学2026届化学九上期中综合测试试题含解析
- 2026届内蒙古牙克石市英语九年级第一学期期末调研模拟试题含解析
- 信托贷款财产抵押契约协议书5篇
- 跨区域中央空调安装与远程监控服务合同
- 中央空调系统安装与能耗监测合同
- 离婚后房屋产权变更及财产分割执行协议
- 婚后共同房产分割协议书:女方权益保障范本
- 中国大麻酚油(CBD油)行业发展监测及投资战略研究报告
- 《工业机器人技术与应用》高职人工智能技术应用专业全套教学课件
- 中医院依法执业管理制度
- 广西b证继续教育考试试题及答案
- JG/T 463-2014建筑装饰用人造石英石板
- DB32/T 3946-2020平原水网地区闸控航道通航标准
- 2025年初级银行从业资格之初级个人理财考试题库
- 2025-2030年中国核子及核辐射测量仪器行业竞争格局及发展趋势分析报告
- 2024年4月全国自考00054管理学原理真题
- 银行保险机构安全保卫工作自查操作手册
- 2025-2030中国咖喱粉市场消费调查及投资效益趋势预测研究报告
评论
0/150
提交评论