兄弟连_马剑威_JAVA基础_063_代码块
定稿[Java基础教程-兄弟连马剑威]-112-集合框架概述.ppt
![定稿[Java基础教程-兄弟连马剑威]-112-集合框架概述.ppt](https://img.taocdn.com/s3/m/a9e3a83281c758f5f71f670b.png)
第 112 讲
马剑威
1、集合框架的作用 2、集合框架结构图 3、Collection接口
课程大纲
1、集合框架的作用
• 在实际开发中,我们经常会对一组相同类型的数据进行统一管理操作。到目前为止 ,我们可以使用数组结构,链表结构,二叉树结构来实现。
• 数组的最大问题在于数组中的元素个数是固定的,要实现动态数组,必竟还是比较 麻烦,自己实现链表或二叉树结构来管理对象更是不方便。
• 在JDK1.2版本后,JAVA完整的提供了类集合的概念,封装了一组强大的、非常方便 的集合框架API,让我们在开发中大大的提高了效率。
• 集合中分为三大接口: • Collection、Map、Iterator • 集合框架的接口和类在java.util包中
2、集合框架结构图
Iterator
Collection
• 接口的定义: • public interface Collection<E> • extends Iterable<E>
谢谢
Thanks
Map
ListIterator
List
Set
TreeMap
HashMap
ArrayList
LinkedList
Vector
HashSet
Comparmparator
TreeSet
LinkedHashMap
Utilities Collections
Arrays
3、Collection接口
• Collection 层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。JDK 不提供此接口的任何直接 实现:它 提供更具体的子接口(如 Set 和 List)实现。此接口通常用来传递 collection,并在 需要最大普遍性的地方操作这些 collection。
兄弟连_马剑威_JavaWeb_063_JavaScript错误处理

p
第63讲:JavaScript错误处理
课程大纲
•1、try/catch语句
•2、throw 语句
1、try/catch语句
•语法
•try { //在这里运行代码} catch(err) { //在这里处理错误}
•try语句允许我们定义在执行时进行错误测试的代码块。
•catch语句允许我们定义当try 代码块发生错误时,所执行的代码块。
p语句y和是成对出现的
•JavaScript try catch是成对出现的。
2、throw 语句
•throw 语句允许我们创建自定义错误。
•正确的技术术语是:创建或抛出异常(exception)。
y
•如果把throw 与try 和catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。
•语法
•throw exception
•异常可以是JavaScript 字符串、
•数字、逻辑值或对象。
THANK
YOU!
微信号:weige-java
扫一扫,关注威哥微信公众平台。
[Java基础教程_兄弟连马剑威]_139_XML
![[Java基础教程_兄弟连马剑威]_139_XML](https://img.taocdn.com/s3/m/406b413e83c4bb4cf7ecd1d6.png)
4、SAX解析XML
• • SAX是Simple API for XML的缩写 SAX 是读取和操作 XML 数据更快速、更轻量的方法。SAX 允许您在读取文档时处 理它,从而不必等待整个文档被存储之后才采取操作。它不涉及 DOM 所必需的开 销和概念跳跃。 SAX API是一个基于事件的API ,适用于处理数据流,即随着数据 的流动而依次处理数据。SAX API 在其解析您的文档时发生一定事件的时候会通知 您。在您对其响应时,您不作保存的数据将会被抛弃。
XML
第 139 讲
马剑威
课程大纲
1、什么是XML 2、XML的用途 3、DOM解析XML 4、SAX解析XML 5、JDOM解析XML 6、DOM4J解析XML 7、通过对象生成XML文件 8、各种解析方法比较
1、什么是XML
• XML(Extensible Markup Language 可扩展标记语言),XML是一个以文本来描述数 据的文档。 一个XML文档示例: <?xml version="1.0" encoding="UTF-8"?> <person> <teacher id="1"> <name>小白</name> <desc>一个猥琐但不下流的淫</desc> </teacher> <teacher id="2"> <name>威哥</name> <desc>一个高端大气上档次有内涵的淫</desc> </teacher> </person>
• •
下载地址: /projects/dom4j/files/
[Java基础教程_兄弟连马剑威]_091_StringBuffer类
![[Java基础教程_兄弟连马剑威]_091_StringBuffer类](https://img.taocdn.com/s3/m/0d84661cf18583d0496459c5.png)
2、 StringBuffer类原码分析
• 查看StringBuffer的原代码
3、 StringBuffer常用操作方法
方法名称 public StringBuffer() public StringBuffer(String str) public StringBuffer(CharSequence seq) public StringBuffer append(数据类型 b) public StringBuffer delete(int start,int end) public int indexOf(String str) 描述 构造一个空的StringBuffer对象 将指定的String变为StringBuffer的内容 接收CharSequence接口的实例 提供了很多的append()方法,用于进行字符串连接 删除指定位置的内容 字符串的查询功能
3、 StringBuffer常用操作方法
方法名称 public StringBuffer insert(int offset,数据类型 b) public StringBuffer replace(int start,int end,String str) public StringBuffer reverse() public String substring(int start) public String substring(int start,int end) 描述 在指定位置上增加一个内容 将指定范围的内容替换成其他内容 字符串反转 字符串截取 截取指定范围的字符讲
马剑威
课程大纲
1、 StringBuffer类引入 2、 StringBuffer类原码分析 3、 StringBuffer常用操作方法 4、 StringBuffer的兄弟StringBuilder
说课[Java基础教程-兄弟连马剑威]-140-即时通信项目实战.ppt
![说课[Java基础教程-兄弟连马剑威]-140-即时通信项目实战.ppt](https://img.taocdn.com/s3/m/7cf3cff6866fb84ae55c8d62.png)
第 140 讲
马剑威
1、需求分析 2、详细设计 3、代码实现
课程大纲
1、需求分析
• 即时通信是企业工作中内部沟通必不可少的手段,本工程将模拟实现即时通信中最 根本的功能。
• 即时通信工程分为:
• 〔1〕效劳器端:
•
效劳器端主要负责用户管理,消息转发功能
• 〔2〕客户端:
•
客户端主要负责用户间的消息发送
• 客户端: • 1、用户登录功能。 • 2、登 录后用户可查看到用户列表 • 3、向指定人发送消息 • 4、向所有人发送消息
• 代码实现步骤: • 1、构建界面原形 • 2、分析定义相关对象 • 3、实现功能 • 4、测试
3、代码实现
谢谢
Thanks
2、详细ห้องสมุดไป่ตู้计
• 效劳器端: • 1、登录效劳器后,进展客户端的监听,如有客户端连接,启动用户效劳线程,与客
户端进展交互。 • 2、如客户端向所有人发送消息,效劳器将向所有在线用户播送该消息。 • 3、如客户端向指定人发送消息 ,效劳器将查找接收人用户线程后转发消息。 • 4、用户登录后,向所有人更新用户列表
兄弟连_马剑威_JAVA基础_093_Math与Random类

Math与Random类
第93 讲
马剑威
1、Math类
2、Random类
1、Math类
•Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
static double PI比任何其他值都更接近pi的double 值
double double
abs(double a) 返回double 值的绝对值
random() 返回带正号的double 值,该值大于等于0.0 且小于1.0
round(double a) 返回最接近参数并等于某一整数的double 值
返回最接近参数并等于某整数的
sqrt(double a) 返回正确舍入的double 值的正平方根
2、Random类•Random:此类的实例用于生成伪随机数流
nextLong() 返回下一个伪随机数的long 值
nextBoolean() 返回下一个伪随机数boolean 值
nextDouble() 返回下一个伪随机数,在0.0 和1.0 之间的double 值
nextFloat()返回下个伪随机数,在0.0 和1.0 之间的float 值
返回下一个伪随机数在0010float nextInt() 返回下一个伪随机数,int 值
nextInt(int n)返回一个伪随机数,在0(包括)和指定值分布的int 值
谢谢Th k Thanks。
Java基础教程兄弟连马剑威134内省机制ppt课件

在整堂课的教学中,刘教师总是让学 生带着 问题来 学习, 而问题 的设置 具有一 定的梯 度,由 浅入深 ,所提 出的问 题也很 明确
2、内省基本概念
• 内省(IntroSpector)是Java 语言对 Bean 类属性、事件的一种缺省处理方法。例如类 A 中有属性 name, 那我们可以通过 getName,setName 来得到其值或者设置新的值。
• 通过 getName/setName 来访问 name 属性,这就是默认的规则。
在整堂课的教学中,刘教师总是让学 生带着 问题来 学习, 而问题 的设置 具有一 定的梯 度,由 浅入深 ,所提 出的问 题也很 明确
2、内省基本概念
• Java 中提供了一套 API 用来访问某个属性的 getter/setter 方法,通过这些 API 可以使 你不需要了解这个规则,这些 API 存放于包 java.beans 中,一般的做法是通过类 Introspector 的 getBeanInfo方法 来获取某个对象的 BeanInfo 信息,然后通过 BeanInfo 来获取属性的描述器(PropertyDescriptor),通过这个属性描述器就可以获取某个属性 对应的 getter/setter 方法,然后我们就可以通过反射机制来调用这些方法。
获得 beans MethodDescriptor。 PropertyDescriptor[] getPropertyDescriptors()
获得 beans PropertyDescriptor。
Properties 属性文件工具类的使用
在整堂课的教学中,刘教师总是让学 生带着 问题来 学习, 而问题 的设置 具有一 定的梯 度,由 浅入深 ,所提 出的问 题也很 明确
[Java基础教程_兄弟连马剑威]_108_IO之数据流
![[Java基础教程_兄弟连马剑威]_108_IO之数据流](https://img.taocdn.com/s3/m/5354da3f3968011ca3009176.png)
第 108 讲
马剑威
课程大纲
1、DataInputStream 2、DataOutputStream
1、DataInputStream
• • • public class DataInputStream extends FilterInputStream implements DataInput 数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型 。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。 DataInputStream 对于多线程访问不一定是安全的。 线程安全是可选的,它由此类方 法的使用者负责。
谢谢
Thanks
Hale Waihona Puke 2、DataOutputStream
• • public class DataOutputStream extends FilterOutputStream implements DataOutput 数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中。然后,应 用程序可以使用数据输入流将数据读入。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
代码块
第63 讲
马剑威
1、普通代码块
2、构造块
3、静态块
静态块
普通代码块
1、普通代码块
•直接写在方法中的代码块就是普通代码块
•示例:
示例
•public class Demo1{
•public static void main(String []args){
{//
•{// 普通代码块
•String info = “局部变量-1” ;
•System.out.println(info) ;
•}
•String info = “局部变量-2” ;
•System.out.println(info) ;
•}
•}
构造块
2、构造块•构造块是在类中定义的代码块
•示例:
•class Demo{
•{// 构造块
//
•System.out.println("构造块") ;
•}
•public Demo(){
bli D(){
•System.out.println("构造方法。
") ;
•}
•}
静态块
3、静态块
•在类中使用static声明的代码块称为静态代码块
•示例:
示例
•class Demo{
•{
•System.out.println("构造块") ;
S t t i tl("")
•}
•static{
•System.out.println("静态代码块") ;
S i l("")
•}
•public Demo(){
•System.out.println("构造方法。
") ;
构造方法
•}
•};
谢谢Th k Thanks。