版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一天课程 (2012-7-10)JAVA常用的名词JVM java 虚拟机Application 应用程序 必须有一个入口的方法叫做 public static void main(String args)Applet 小应用程序 该程序必须要内嵌在一个容器中运行,它有自己的生命周期重点: JAVA的开发环境 JDK: java 开发工具集 JDK版本问题 1.4不支持泛型 5.0 泛型 6.0 枚举 默认安装路径C:Program FilesJava JRE: JAVA运行时环境环境变量的配置(1) Path:window寻找可执行应用程序的一个查找路径 不同的路径之
2、间使用;来分隔配置一个路径 C:Program FilesJavajdk1.6.0_26bin(2) CLASSPATH 告诉系统到那些目录下面去查找对应的要执行的文件 .;D:3020j2secxchapter1 .表示当前目录 预习作业:常用的DOS命令 切换目录 查询文件 拷贝文件 重命名 移动文件 *表示通配符 *.java *.*常用java命令 Javac 编译命令 主要将以.java结尾的Java文件编译生成以.Class结尾的二进制字节码文件。 Javac java文件名.java Java 运行命令 java 类名 Javadoc 生成帮助文档命令 javadoc java文
3、件面向对象的基本概念 类 (属性 方法 构造方法 ) 对象 对象创建 传递 销毁 面向对象的三大基本特性:封装、继承、多态 OOP AOP类 是由客观事物经过大脑抽象而形成概念,是对一类事物的描述使用class 关键字来描述类 类中有属性和方法: 属性对应的是事物的静态特性 (可以叫做成员变量) 方法对应的是事物的动态特性对象:是类的一个具体的实例化创建对象对象的方法: 类名 对象名 = new 类名(); 调用类的构造方法来创建对象 构造方法是特殊的方法:方法名=类名注意: 类中属性和方法必须在创建对象之后才能使用 对象.属性 对象.方法 .表示引用第二天课程 (2012-7-11)JAVA
4、语言描述类的声明语法格式: class 修饰词 class 类名 属性定义部分 构造方法 普通方法 用于修饰class的关键字有两种:(1) public 公共的 (2)缺省 不写 表示当前类只能在同一个包中使用注意点:(1)一个java文件中最多只能有一个类被public 修饰,并且要求使用public修饰这个类的类名来作为该java文件的文件名。(2)要求将来大家写代码的时候一个java文件一个类,并且该类用public修饰,类名与文件名相同类名 /规范一:类名要求首字母大写 使用名词性词组 (不能使用关键字)/要求编写代码统一对齐,要求整个java类中采用统一的缩进方式 (2,4)声明属
5、性: type =defaultValue ; 修饰词 数据类型 属性名称 =默认初值;属性的修饰词四种: public 公共的 private 私有的 default(默认) protected受保护的数据类型 主要分成两大类 : 基本数据类型: 整型 浮点型 布尔型 字符型 引用数据类型: 属性名称 命名规范:要求首字母小写,从第二单词开始的首字母大写 一般使用名词性词组方法的声明: () Return ; 修饰词 返回值类型 方法名称(参数列表) 语句块;方法的修饰词四种: public 公共的 private 私有的 default(默认) protected受保护的返回值类型 主要分
6、成两大类 : 基本数据类型: 整型 浮点型 布尔型 字符型 引用数据类型: 注意: (1) 如果没有返回值的话则使用void来声明 (2) 方法的返回值只有一个方法名称 命名规范:要求首字母小写,从第二单词开始的首字母大写 一般使动词性词组 注: 在一个java类中允许出现多个同名的方法,但要求形参列表必须不一致(指的是参数的个数或参数的类型不一致) 形参列表 : 数据类型1 参数名称1, 数据类型2 参数名称2, 数据类型3 参数名称3,备注:JDK1.5之后java语言支持可变参数列表重点 :构造方法: 是一类特殊的方法功能:创建其所属类型的一个新的对象。 () 修饰词 类名(形参列表)
7、语句块; 特殊点: (1)构造方法可以用于创建对象,可以直接使用,不需要通过对象来调用。 (2)在构造方法中需要完成对属性的初始化赋值。 (3)在一个类允许出现多个构造方法 (4)每个类必须至少拥有一个构造方法 该规则由JVM来保证: 如果你编写的类没有写构造方法的话,则在该java文件编译的时候由编译器自动的为该类添加一个空的方法体的构造方法 如果你编写的类自带了构造方法的话,则在编译的时候,编译器不会再为你添加任何的构造方法实战开发建议: (1)当前类中如果没有构造方法的话,你就不要管了,如果写了构造方法的话,则要求把空的方法体的构造方法手动加上。(2) 类体中书写规范 属性 构造方法 关
8、于属性的操作方法放在前面 普通信息的封装和隐藏使用private 关键来修饰属性或方法以达到隐藏属性或方法的目的; 注:private修饰的属性和方法只能在当前类中使用,其他所有的类都不能访问实际开发过程中类的属性要求全部使用private来修饰,同时必须要暴露一组public公共的方法来进行操作封装 暴露一组public公共的方法对本类的私有属性进行操作的过程。作业: (1) 第2章PPT中的练习(3) 在昨天编写的类的基础上,使用封装和隐藏去进一步完善第三天课程 (2012-7-12)Java 基础语法 注释: 三种 / /*/ /* */ 标识符: 关键字不能做标识符 由字母、数字、_、
9、$ 组成 ,不能以数字开头 $开头的一般表示为内嵌 也可以表示成临时数据类型: 基本类型 整型 :byte 8 short 16 int 32 long 64 默认int 浮点型: float 32 double 64 默认double float f = 3.14f; 字符型: char关于字符的概念 字符编码:ASCII编码 Unicode编码字符集:采用相同编码形式存放的字符的集合。常用的字符集:中文 GB2312 GBK GB18030 拉丁 italic Utf-8字符集 ISO-8859-1 常用转义字符: n 换行 r回车 t tab键 ” 布尔型: Boolean 两种值 tr
10、ue false 引用类型 作业: (1)引用类型的用法例子,去测试一把 (2) 将值传递的例子测试 (3) 标准输入/输出 自己完成对象构造和初始化 注:类中的成员变量初始化由三步: (1)根据数据类型进行默认值的初始化 要求掌握8种基本类及引用类型的默认值 (2)根据default后的值来赋值,如果类的属性没有default值的话,则跳过该步骤 (3)根据构造方法来赋值,如果没有构造方法的话,则跳过方法: 类的动态属性 类中方法存放在JVM内部的全局代码区 注:(1)方法通常通过对象来调用,调用时必须注意实参列表与形参列表的个数、顺序、类型都必须一致。 (2)每个方法最后都会有return
11、语句。 如果该方法定义了返回值类型,则在方法体中肯定有return 语句,不能缺省,并且return返回的数据类型与返回值类型必须一致。 用void修饰的不需要返回值类型的方法,在JVM编译的时候自动会添加return ;语句,所以不要自己写return 。 特殊的构造方法,默认返回的就是本身的对象,所以也不需要写return语句,由jvm自动处理.变量 局部变量: 写在方法或语句块内部的变量 方法的形参作为局部变量来看待。 注: 要使用的话,必须要先声明和赋初值之后才能使用 形参除外,原因在 形参在方法被调用时也会根据传递进来的实参进行默认的初始化赋值 成员变量: 也叫类的属性 写在类的内部
12、 ,在方法的外部的变量 只要声明后就可以使用 ,原因在于成员变量在对象创建的时候会根据数据类型进行自动默认初始化赋值。变量的作用范围:解决重名问题的规则:就近原则第四天课程 (2012-7-13)输入与输入 Scanner 类的用法 了解 System.out.println() 用于向控制台输出任意类型的数据 以后该语句只允许出现main() 方法中。 在实际中主要用于调试 System.out.printf(“%10.2f”,) /了解关键字this 重点 有四种用法 (1) 调用类的属性 this.属性 在构造方法中使用,给类的属性赋值,解决命名冲突问题。 (2) 调用类的普通方法 th
13、is.方法名()(3)调用构造方法 this(参数列表.) 注意: (1) this()该语句必须放在构造方法的第一条指令。 (2) 使用this()来调用构造方法的话,在本类中必须至少有一个不包含this调用的构造方法作为退出构造来使用 (4) 表示当前对象 this = 运算符:Infinity 在java语言中表示无穷大 - NaN 表示not a number 不是一个数字 负数的二进制-负十进制的转换 (1)-1 (2)取反 (3)转换为十进制 (4)*-1负十进制的转换 - 负数的二进制(1) 取绝对值 (2)转为二进制 (3)取反 (4)+1作业: 八种基本类型的数据之间的转换第
14、五天课程 (2012-7-16)分支语句 单路分支 : if(条件)语句块 双路分支 : if(条件1) 语句块1 else 语句块2 多路分支 : if (条件1) 语句块1 else if (条件2) 语句块2 else if(条件3) 语句块3 else 语句块4 Switch() Case : Break; Case : 题目:(1) 接收键盘输入的学生的成绩 输出该成绩所属的等级90100 优秀 8090 良 7080 中等 6070及格 60 不及格(2) 接收键盘输入的三个数字,输出其中的最大值要求求三个数的最大值要编写一个方法 (3) 接收键盘输入的数字0星期日 6星期六 输出
15、对应的星期几 (4) 接收键盘输入的年份,输出是否为闰年要求专门编写一个方法来判断是否为闰年 (5) 接收键盘输入的年份和月份,输出该月有多少天循环语句 For(初始化部分; 循环条件部分 ; 迭代部分) 循环体部分;素数 : 除1和它本身之外,不能被其他任何数整除备注: 一般情况下 循环最多只能使用两层嵌套重点: break; continue;Break 标签名;指的是跳出标签名所指向的那一层循环题目:(1) 求110的积(2) 打印如下乘法口诀表 1*1=11*2=2 2*2=4 1*3=3 2*3=6 3*3=9 . 1*9=9 . 9*9=81 (3) 输出200300之间的素数,要
16、求每8个一行 (注:不允许使用continue 标签) (4) 从键盘循环接收数据,求输入数据的和 当接收到Y字符时退出 退出时输出累计的和(6) 打印出一个指定层数的菱形 (6) 打印出一个指定层数的空心菱形 (思考题)第六天课程 (2012-7-17)作业: 编写程序,采用适当的循环和流控制语句实现下述功能:打印输出0200之间能被7整除但不能被4整除的所有整数;要求每行显示6个数据;递归: 必须满足的两个条件: 1、 递推公式 2、 终止条件正态分布数组: 熟练一维数组的定义、创建、赋值、取值、遍历、修改 掌握二维数组 了解多维数组 数组中的每个元素相当于该对象的成员变量,也就意味着,数
17、组创建的时候,每一个值首先会根据数据类型赋初值。数组已经创建则长度固定,定长的,且存放数据的内存单元之间是连续的练习: 打牌 定义一个数组用于存放4种花色的52张牌,完成初始化,并且输出内容。Arrays.sort()方法要求掌握第七天课程 (2012-7-18)包 : 使用package 来描述一个包 声明包的语法规则 : package 包名; 该指令必须是类的第一条指令 包名的命名规则:公司对应的域名.总的项目名称.模块名称.子模块名称.自己开发的模块名注意:带包名的java 类 必须要使用如下的格式去进行编译 Javac -d . java文件名 -d表示要带包编译生成java类 .表
18、示在当前目录下生成包结构 Java 包名.类名 来运行该类每个类都必须隶属一个包,并且对应一个根目录。命名空间,一个类如果没有定义包的话,则编译后会放置到默认的命名空间中去 defaultpackage使用包的过程应该注意: (1)如果导入的不同的包中有同名的类的话,使用的时候为了区分开来,则必须在类名前带上包名一起使用。(2) 如果要导入一个包下的所有的类,可以使用*来描述。不用担心效率问题 (3) 缺省导入java.lang 包重点 : 继承 extends 在其他人编写的类的基础之上进行利用和扩展 (1)其他人所编写的类中的属性和方法 你可以通过继承的方法直接拿来就用 (2)在其他人开的
19、功能的基础上添加属于你自己的新功能用法: (1)代码重用.Class A extends BA : 子类, 派生类B: 父类Object类是所有Java类的最高层父类 (超类) ,主要是由于该类通过方法来描述了类的定义和表示、以及对对象的管理(声明,克隆)存在缺点: 单继承, java语言为什么只能单继承作业: 普通人 (姓名,性别,年龄,居住地址,吃饭、睡觉、行走、)教师 ( 教学年龄,教师资格,教学、备课)学生 ( 所在班级,学号,上课、预习)访问控制权限 : 见表格方法的重写(覆盖)和重载重写:发生在子类和父类之间,也就是说必须要要有继承关系才会有重写 子类去重写父类中同名的方法,以达到
20、方法覆盖的目的。Override 规则:重写方法必须和被重写方法具有相同的方法名称、参数列表和返回值类型; 重写方法不能使用比被重写方法更严格的访问权限; 重写方法不允许声明抛出比被重写方法范围更大的异常类型。重载:在同一个类中的同名的方法,只是参数列表不同 overload 属性的重写 有 规则:属性名要求一致,但类型可以不一致重载 无Super 关键字 必须在子类中使用用法:(1) Super.方法() 表示要调用父类中的方法(2) Super.属性 表示访问父类属性(3) Super() 表示调用父类的构造方法 必须要放在子类的构造方法中的第一句语句。在子类对象创建之前父类对象必须要先被
21、创建出来。第八天课程 (2012-7-19)比较this和super使用方法Thissuper属性This.属性 表示优先从本类中查找该属性,如果本来中没有该属性则从父类中查找Super.属性 直接从父类访问属性方法This.方法 表示优先调用本类的方法,如果找不到,则调用从父类继承过来的方法Super.方法 直接访问父类中被子类重写的方法构造This() 表示调用本类的构造方法; 该语句必须放在本类构造方法中的第一句;并且要求本类必须至少有一个不包含this()调用的构造方法;Super() 表示子类对象创建出来之前必须要创建父类对象;该语句必须先在子类的构造方法的第一句;特殊This 表示
22、当前对象无重点: 多态 多态:多种状态发生子类和父类之间, 必须要在继承(或实现)的基础上才能产生多态。 多态的描述:(1) 子类对象可以替代父类对象来使用子类是在父类的基础之上进行功能点扩充。 具体用法: /定义变量的多态 Animal a = new Person(); /形参的多态 public void xs(Animal o) Person p = new Person(); Xs(p); /返回值的多态 public Animal getA() Person p = new Person(); Return p; 虚方法的调用 :指的编译时候认为是父类中的方法,而实际运行时是运行的
23、子类中的方法。 造型: /要进行转换if(o!=null & o instanceof Person) /instanceof 表示判断当前对象的真实类型 Person person = (Person)o;/强制转换 造型只能表示从子类强制转换成父类 且必须在多态的情况下才能进行 person.display();/虚方法的调用 /不能调用子类新增的属性和方法 两个重要的关键字: static final Static 静态的 共享的 使用注意点: (1) 只能用于修饰类的属性、方法、语句块、内部类(2) 使用static来修饰属性或方法时 ,该关键字应放在修饰词 与类型(或返回值之间) P
24、ublic static String a; Public static void a()(3) 加static 修饰的属性、方法、语句块、内部类 表示整个类共享,也就是说:在当前类装载(classlaod)的时候,这些属性或方法就已经创建出来 可以直接使用类名.来访问。(4) Static修饰的静态方法中不允许调用非静态的属性(普通属性)和非静态的方法(普通方法)。(构造方法除外)普通属性和普通方法是必须要通过创建对象才能来调用的。关于构造方法的说明:(1) 方法名为类名(2) 该方法可以带参数,这些用于给该类的属性赋值(3) 返回的是创建出来的对象,在该方法中不能写return语句。(4)
25、 该方法前面可以使用的修饰词:public private (5) Static、final都不允许用来修饰构造方法(6) 构造方法不允许继承(7) 如果使用private 来修饰构造方法 ,则构成单例设计 重点 : 单例设计: (1) 该类的构造方法私有(3) 该类中一定存在一个属于自身类型的属性 该属性一定是static,根据封装特性,要求使用private来修饰(4) 该类中一定存在一个公开的方法,并且是static 的,以便其他人可以直接使用类名.该方法名 的方式来调用,最终能获取到该类的对象。(5) 单例 也就是 单个实例作业:(1) 编写一个符合单例设计模式的类 Single(2)
26、 使用Static 来实现一个能统计该类已经产生了多少个对象的方法Final 关键字 final标记的类不能被继承。 final标记的方法不能被子类重写。 final标记的变量(成员变量或局部变量)即成为常量,只能赋值一次。 final标记的成员变量必须在声明的同时或在每个构造方法中显式赋值,然后才能使用。 final不允许用于修饰构造方法、抽象类以及抽象方法。第九天课程 (2012-7-20)IDE集成开发工具的使用(1) eclipse IBM免费贡献 使用频率较高 (2) MyEclipse 收费 在eclipse的基础上添加一些有用,比较常用的插件,以方便开发人员开发 推荐使用6.5(
27、3) NetBeans sun公司 不免费 使用IDE过程:(1) 创建 workspace 工作平台(2) 配置installed JRE (3) 新建JAVA工程抽象类 使用abstract来修饰的class. 抽象方法: 不包含方法体的方法,同时要使用关键字abstract来修饰。 包含抽象方法的类必须声明为抽象类。 抽象类的使用:(1)抽象类不一定要包含抽象方法。 (2)抽象类中可以包含普通属性和普通方法 (3)抽象类不能被实例化。(不能创建对象) (4)抽象只能通过其实现子类来起作用 (5)子类继承抽象的父类的话,必须实现其所有的抽象方法,否则,子类自身也必须声明为抽象类。 (6)a
28、bstract关键字不能和final,static关键字一起使用 (7)abstract不能修饰构造方法和属性 (8)abstract修饰的抽象类虽然不能被实例化,但是它有构造方法,该构造为子类对象的创建提供服务。接口 (interface) 标准 实现不相关类的相同行为 USB接口 PS-2接口 RS232串口 是一种特殊的类,里面只包含抽象方法和全局常量。接口不能被实例化,必须通过其实现类来起作用。声明一个语法: 修饰词 interface 接口名 多态特性的第二种用法: 实现类和接口之间也具有多态性,接口可以使用实现类的对象来替代。实现 implements一个类去实现一个接口,也就意味
29、着要实现接口中所有的抽象方法,否则该类必须声明为抽象类。 class extends implements ,* declarations*类、接口之间的关系:(1) 类与类之间只能是继承关系,并且是单继承(2) 类与接口之间只能是实现关系,并且可以支持多重实现(3) 接口与接口之间只能是继承关系,并且支持多重继承 子接口对象可以替代父接口对象来使用。多态的表现形式: 类的多态:(1) 子类可以替代父类使用 具有继承关系的子类和父类之间的多态(2) 现实类可以替代接口使用 实现类和接口之间的多态 属性的多态 属性的重写 方法的多态 方法的重载常用的设计模式 实战过程中的运用:(1) 抽象类的用
30、法: 模板设计假设有一个人类 姓名 性别 年龄 说话() 教师类 学生类 工人类 /编写一个学生档案的模板类姓名性别出生日期学历籍 贯联系方式毕业时间身份证号毕业院校专 业兴趣爱好现 住 址家庭地址(2) 接口用法USB接口 第十天课程 (2012-7-23)(3) 抽象和接口的混合使用适配器设计模式 (4) 接口作为标准的用法工厂设计 降低代码的耦合度由于天气比较热,所以最好要有水果吃让大家定义吃水果的接口有一个吃的方法然后编写苹果、西瓜、橘子 三个实现类 编写一个测试类去吃 苹果、西瓜、橘子代理设计假设你吃水果了没有付钱就走了,过了几天,我去找你要钱,结果你死不承认,你要赖账,我回来心里很
31、不平衡,我找到讨债公司替我去要钱。讨债公司准备道具,买了手枪,硫酸,匕首, 你害怕了,之后就还钱,讨债公司替我要到了钱, 最后销毁道具。实际: 项目经理布置,你去查找一下这项目在那些环节会存在瓶颈问题。动态代理作业: 假设要在淘宝网站开店 有一个仓库 买鞋子、衣服、裤子、手枪 abstract抽象和 interface接口的总结面向接口的编程区别抽象类接口组成有普通属性,普通方法,构造方法,抽象方法(抽象类比普通类多了一个抽象方法)只允许存在全局常量和抽象方法关键字abstractInterface 抽象类必须通过子类来起作用接口必须通过实现类来起作用Extend继承的方式来实现实现类是通过i
32、mplements来实现接口存在单继承的局限一个接口可以被多个实现来实现一个实现来可以同时实现多个不同的接口抽象类中可以包含内部接口接口也允许存在抽象类模板设计工厂设计、代理设计适配器设计特点作为标准存在嵌套类 嵌套在某一个类内部的类。内部类: 要求掌握匿名类内部类写在一个类的内部,其所有的语法规范和之前讲过的相同。访问方式不同实战过程中运用:使用内部类来定义数据结构使用指针结构来完成的链表思考题: 在理解链表的基础上去完成 双向链表第十一天课程 (2012-7-24)异常处理(1) 了解异常的类型(2) 掌握捕捉异常的方法(3) 学会自己定义异常异常 (exception) 违例 指的程序运
33、行过程中发生的违例 与编译无关常见的异常NullPointerException 空指针异常 说明肯定有一个引用类型的变量没有被赋值而直接使用。ArrayIndexOutOfBoundsException 数组下标越界异常 说明访问的下表超过了数组的最大长度。IndexOutOfBoundsException 下标越界java.lang.ArithmeticException 算术运算异常 说明算术表达式中存在问题自己捕捉异常的方法 Try 可能出现异常的语句块; catch(异常的类型1) /匹配类型 出现异常之后需要执行的代码; catch(异常类型2) finally /最终语句块 最后
34、需要执行的语句块;Trycatch()Trycatch()()finally这是一个整体 注意点:1、 catch部分捕捉的是由系统抛出的异常对象2、 如果存在多个catch的时候,必须要把小范围的异常写在前面,大范围的异常捕捉在后3、 Finally表示的是最终一定会执行的语句块,一般情况下不要缺省,实际开发过程中用于关闭第三方资源。4、 Trycatch()finally可以支持无限层次嵌套,备注:日常开发过程中不建议使用5、 Throws 异常的类型 6、 打印输出异常的对象 e. printStackTrace ()方法 使用单独的线程去 打印栈的轨迹6、 人工手动抛出异常Throw
35、异常的对象 7、自定义异常类 通过extend 系统预定义异常类来实现 Throw 自定义异常类的对象UUID 唯一标识符(ID) 在java语言中用来标记唯一的一个类,将来的由这个类生成的对象如果需要在网络上进行传输的话,一定要求有唯一标记。 Assert 断言 了解作业: 把PPT上关于trycatch的用法的例子自己调试 栈的轨迹的打印 自定异常并捕捉异常处理第十二天课程 (2012-7-25)常用的JAVA类 掌握Object 类 toString equals clone wait notify熟练掌握 (1) 字符串 、 数字、 日期 三者之间的相互转换 (2) 国际化相关的类 国
36、家、语言、时区、时间Object类 hashCode() 用于返回一个哈希码 返回的是int 类 实际过程中用于描述内存单元的地址 需要十六进制 int = 十六进制 Integer.toHexString(int i)toString() 该方法以字符串的形式来描述一个类equals() 该方法用于比较两个对象是否相等 实际过程:比较两个对象是否相等, 对象排序问题 在排序中使用了比较对象的规则,所以将来对对象进行排序要求同时改变比较规则,应该使两者的规则保持一致。 finalize() 该方法表示在对象销毁的时候必须要调用的方法 该方法不是由你去调用的的,而是由垃圾回收线程来调用的。clo
37、ne() 克隆方法 该方法用于复制一个对象 注意点:如果本类要能进行克隆,必须要求该类去实现Cloneable接口 分类: 浅层克隆 深层克隆实战过程: 比较基本数据类型使用 = 对值进行比较 比较引用类型的话必须要使用 equals()这个方法 Equals()方法使用要注意: 如果存在常量字符串的话,必须要把常量字符串写在之前 例如 “常量字符串”.equals(对象名称)Token 令牌技术字符串相关的类String 表示的是长度不可修改的字符串 , 在进行字符串连接操作的时候最起码需要2的所有字符的空间才能完成操作, 因此在实战过程一般不使用 + 来进行大字符串连接。 用法备注: 使用
38、String 来声明变量 String str = 字符串 不要使用 String str = new String(字符串); 实战过程 处理字符集编码问题的时候需要用到String的构造方法String类中的常用方法concat() 字符串连接replace() 字符串替换 substring() 字符串截取 toLowerCase() 转换为小写 toUpperCase() 转换为大写 trim() 首尾去空格charAt() 获取指定下标位置的字符 startsWith() 判断是否以XXX开头 、indexOf() 判断是否包含某个子字符串,返回该子字符串在原字符串中的首次出现的位置
39、lastIndexOf()判断是否包含某个子字符串,返回该子字符串在原字符串中的尾部出现的length()获取字符串的长度equals() 比较字符串是否相等equalsIgnoreCase() 大小写不敏感的比较 compareTo() 比较两个字符串的大小 int 1 表示前面字符串字符串 0 相等 -1小于 来表示 split() 按指定的分隔符将字符串转换为数组 StringBuffer 在实战过程用来代替String 来完成大字符串连接的工作。 主要用于XML的拼装过程 可变长度的字符串。 append() 在尾部追加字符串insert() 在指定位置插入字符串reverse() 反
40、转 setCharAt() 在指定位置插入一个字符 显著的特点 : 线程安全的类 处理速度要慢StringBuilder 与 StringBuffer用法完全一样 线程不安全的类 处理速度要快一点StringTokenizer 该类用于将字符串按照一定的分隔符转换为字符串数组 创建StringTokenizer对象的时候如果没有指定分隔符的话,默认为空格 实战过程该可以由String .split()来替代, 以“,”为分隔符 注意:split(符合正则表达规则的字符串)封装类 针对java言语中的8中基本数据类型,在扩展功能的基础形成相对应的类 基本类型 封装类short - Short b
41、yte - Byte int - Integer long - Long boolean - Boolean char - Character float - Float double - Double 在封装类中封装了从该类对应的基础数据类型到String 的转换过程 封装类中使用的时候必须要创建对象 自动封装和拆封 从基本数据类 - 对应的封装类 的转换可以自动进行 该过程叫自动封装 从封装类的对象 对应的基本数据类 也可以自动进行转换 该过程叫自动拆封 使用 基本数据类型+” - String类型 效率较高 String.valueof(基本数据类型) - String类型作业:1、 自
42、己编写代码调用String 中的方法,掌握其具体调用方法和意义。2、 自己编写代码去实现从封转类与基本数据类型之间的转换,与String类型之间的相互转换第十三天课程 (2012-7-26)日期和时间 全球标准时间: GMT 格林威治时间 中国 东八区GMT+8 中国的标准时间 CST 北京时间: 在JAVA语言中 Date - long 是可以相互转换的 getTime() 可以使用一个long类型的数据来表示一个时间 2000L - 表示什么时间 单位是毫秒 2000毫秒 = 2秒 基准时间 1900 1 1 0 0 0 GMT时间 1970 1 1 0 0 0 时间的完整组成: 时区 国
43、家 四季 年 月 日 上午/下午 星期 时 分 秒 毫秒 微秒 纳秒 1. Date类表示时间的常用类,精确到毫秒 该类中大部分方法已经过时 已过时的方法,不建议使用(但是能用),肯定会有替代的方法来使用,必须去参考帮助文档。 Date() 用于描述具体时间 其中空的方法的体的构造方法不过时,要求掌握,表示创建出当前时间的一个对象 包含 年 月 日 星期 时 分 秒 Date(long )用于描述一个具体的时间段 System.currentTimeMillis();得到java的当前时间2. Calendar类 3. Locale类主要包含 国家和语言 中文/中国 zh/CN 英文/美国 e
44、n/US getAvailableLocales() 得到本机所支持的所有的国家和语言 getDefault() 得到本机默认的国家和语言4. TimeZone类描述时区信息的一个类 getDefault() 获取此主机的默认 TimeZone。5. GregorianCalendar类要求掌握构造方法创建出对象,使用方式可以和Calendar保持一致6. DateFormat类 自学7. SimpleDateFormat类 该提供了 从 Date String的转换方法 /从Date - String new SimpleDateFormat(yyyy年MM月dd日 HH时mm分ss秒SSS毫秒 z Z a E).format(new Date() /从String - Date /前提是String里面的内容一定是一个日期 使用Parse()来完成转换,但是要注意String里面的日期的形式一定要和日期模式字符串相匹配数学类1. Math类ceil(), 向上取整floor(), 向下取整round() 返回最接近参数的max(), min() , abs()random() 产生0.01.0之间的随机数Random类 随机类 在计算中没有真正的随机
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度年福建省高校教师资格证之高等教育心理学过关检测试卷B卷附答案
- 2024年安徽省高考历史试卷(含答案解析)
- 2024年HWREP刷适性改进剂项目投资申请报告代可行性研究报告
- 一年级数学(上)计算题专项练习汇编
- 2024健身中心器械维护分包协议
- 2024年餐饮业务全面合作协议范本
- 2024企业欠款清算协议范例
- 2024年企业保安服务协议
- 2024商品采购单一价格协议规范格式
- 《椭圆的标准方程的求法》一等奖说课稿3篇
- Module 6 Unit 2 Happy Mid-Autumn Festival(教学设计)-2024-2025学年外研版(三起)英语四年级上册
- 2024年细胞治疗行业营销策略方案
- 2024年北京市高考地理真题(原卷版)
- 责任保险行业技术趋势分析
- 北师大版小学数学三年级上册期中考卷含参考答案
- 2024年新人教版七年级上册历史教学课件 第10课 秦末农民大起义
- 2024年北师大版小升初数学试卷及答案
- 现代财产保险(中国)有限公司售电公司履约保证保险条款
- 2024年省国资委选聘兼职外部董事人选(高频重点复习提升训练)共500题附带答案详解
- 《第12课 编码长度与信息量》参考课件1
- DL∕T 325-2010 电力行业职业健康监护技术规范
评论
0/150
提交评论