Java第十课

来源:互联网 发布:centos如何安装mysql 编辑:程序博客网 时间:2024/05/13 03:18

日期格式化对象,可以将日期类型以指定的格式输出,如:

SimpleDateFormat s = new SimpleDateFormat ("yyy-MM-dd  HH:mm:ss")

Ddate date = s.parse("2012-20-59"); ===>2013-9-28

将指定格式的字符串转化 成日期格式,如果超出将会被算成的日期


GC方法的介绍:

1.gc()叫做垃圾回收,由虚拟机定时清理内存中没有被变量指向的对象,程序员无法干预,但程序员可以通过调用System.gc(),通知虚拟机进行垃圾回收,可以加快垃圾加收的速度。(简单的说就是这个方法会叫虚拟机去收垃圾,虚拟机会去但不见得会马上去)

2.对象回收前会调用finalize()完成清理工作,finalize()由Object类定义。


包装类内容:

每个基本类型的包装类的写法都只是基本类型的首字母大写,但int---Integer,char---character.这两个除外

包装类的共同点:

1.XXXValue() 显示包装类中封装的数据

2.包装类名.parseXXX()方法,将字符串转化成基本数据类型


Integer  x = 3  等价于   Integery = new Integer(3)

前者称为自动装箱,先将3基本类型产生包装类对象,再赋值给x


Integer x = new Integer(3);

int a = x+2  等价于 int b = x.intValue()+2

前者称为自动折箱,先将3从包装类中取出来,再运算

@Deprecated  标识方法过时方法,可能有新的方法去替代该方法,该方法可以使用,但不推荐


正则表达式的符号:

1.[ ]:匹配[ ]中描述的任意字符串

例:"[3200-3500]"这样一个正则表达式。"3300"匹配吗?为什么?

不匹配

因为[]表示的是取这里面的任意字符,这个表达的是3200123500

2.{}:字符出现的次数

例:{3,20}最少出现3次,最多出现20次      {3,}最少出现3次,没上限      {3}只能出现3次

3.|:或者

4.+:等价于{1,}

5.*:等价于{0,}

6..(这是个点):任意字符

7.?:等价于{0,1}

8.\d(\D)等价于[0-9],匹配数字,\D非数字

9.\w(\W):等价于[0-9a-zA-Z],\W为非合法标识符

10.\s(\S):匹配空格和回车,\S为非空格和回车


字符串具有长度不可变的特性,当对字符串作添加,删除,替换不会改变原来字符串的内容,而是创建校报的字符串,所以如果要对一个字符串进行多次修改就可以用StringBuffer,这个可以说只是一个临时的字符串,对它进行添加,删除,替换,它不会生成一个新的,而是改变自身。


StringBuffer和StringBuilder的区别:

1.前者是线程不安全的类,但效率高,后者是线程安全,但效率低


线程

线程和进程:

1.进程是指一种“自包容”的运行程序,由操作系统直接管理,直接运行,有自己的地址空间,每个进程一开启都会消耗内存

2.线程是进程内部单一的顺序控制流,一个进程拥有多个线程,多个线程共享一个进程内存空间


主线程(main方法)的作用:

1.最先开始,最后结束

2.产生其它子线程

3.回收资源


创建和启动线程:

1.声明一个Thread类的子类,并覆盖run()方法

class Mythread extends Thread{public void run(){/*覆盖该方法*/}}
2.声明一个实现Runnable接口的类,并实现run()方法

class Mythread Implements Runnable{public void run(){/*实现该方法*/}}

注:线程一启动,先调用start(),再由start()调用run()


start方法和run方法的区别:

启动线程调用start方法,会在主线程基础上开一个子线程,主线程和子线程交替执行,如果调用run(),是普通方法调用,不会在主线程基础上开启子线程,只有在run()结束后,才会执行其它代码

0 0
原创粉丝点击