Java实训第十七天8/18
来源:互联网 发布:淘宝店铺如何转让 编辑:程序博客网 时间:2024/05/22 11:42
1.持久化:
IO 就是实现持久化的一种技术
2.文件:File
只能创建删除文件
只能获取文件的信息
isFile()
exsits()
createNewFile()
mkdirs()
如果通过输出流(向文件中写内容),如果文件不存在,会自动创建
必须保证 文件所在的目录必须存在
3.IO流对文件进行读写:
读取数据的格式
字节流:图片
InputStream
FileInputStream
OutputStream
FileOutputStream
字符流:读取文本文件
Reader
FileReader
Writer
FileWriter
处理流:就是给节点流进行外包装
Buffered
对象流:
a)要存储的对象对应Java类必须实现序列化接口
b)先把根据操作的文件构建节点流对象
再把节点流对象包装为对象流
Map:没有实现序列化接口
字节流复制文件
public class Test{
//srcFile="d:\\test.txt";
//targetFile="c:\\test.txt";
public void copy(String srcFile,String targetFile){
InputStream in=null;
OutputStream out=null;
try{
in=new FileInputStream(srcFile);
out=new FileOutputStream(targetFile);
byte[] b=new byte[1024];//不足1024 24 个字节
/*
int len=in.read(b);
while(len!=-1){
out.write(b,0,len);//24
len=in.read(b);
}
*/
while(true){
int len=in.read(b);
if(len==-1){
break;
}
out.write(b,0,len);
}
}catch(Exception ex){
}finally{
if(in!=null){
try{
in.close();
}catch(Exception e){
}finally{
in=null;
}
}
if(out!=null){
try{
out.close();
}catch(Exception e){
}finally{
out=null;
}
}
}
}
}
4.操作Excel文件90%有
第三方 jar 文件 poi
a)一定要分清楚 操作的excel 版本
.xls 低版本 HssfWorkbook
HssfSheet
HssfRow
HssfCell
.xlsx XssfWorkbook
XssfSheet
XssfRow
XssfCell
b)建议尽量使用低版本
c)读取或新建步骤:sheet、row、cell 下标都是从0开始
先获取其中 sheet页面
在获取sheet中行
在获取行中的列
在获取列中的值
5.如何使用第三方的jar文件
a)复制jar到项目中lib文件夹中(自己创建)
b)在要使用jar上面点击右键 ---build path-----add to build path
6.进程和线程:
a)进程:就是运行的一个程序
b)线程:是进程中的一个任务
c)关系:
一个进程,至少包含一个线程(主线程)
一个线程,属于一个进程,进程结束,所有进程中的线程结束
7.模拟一个人在听音乐,在吃苹果 在吃葡萄
8.简单的多线程程序
9.掌握使用多线程完成文件复制
10.生产者与消费者的关系
11.如何让一个对象失效
Student stu=new Student();
stu=null;
//可以调用,但是不一定执行
//java中垃圾回收是单独的一个子线程,在其中run方法中监视jvm的内存使用情况
System.gc();
12.如何创建一个线程
a)继承Thread类或实现Runnable接口
i)继承
public class My extends Thread{
public void run(){
//使用循环
}
}
或者
ii)接口
public class My implements Runnable{
public void run(){
//使用循环完成多次重复操作
}
}
b)创建线程对象
i) My my=new My();
ii) My my=new My();//一个任务
Thread t=new Thread(my);
c)启动:
i)my.start();//进入就绪状态
ii)t.start();
13.
a)线程的优先级:1-10表示 数字越大级别越高
但是我们只能设置级别,有CPU决定先执行谁
b)常用的方法
start();启动线程
static sleep();让当前线程休眠多少毫秒
join():加入其他线程,自己等待其他线程结束
run():执行任务的主体,有CPU调用
static yield() :暂停正在运行的方法 ,让cpu决定让谁执行
14.银行取钱:
15.使用多线程判断 1--1000之间的素数
a:for(int i=2;i<1000;i++){
for(int j=2;j<i;j++){
if(i%j==0){
continue a;
}
}
}
begin 1100
end 100200
15.统计 1--10000 相加和
long sum=0;
for(int i=1;i<100000000;i++){
sum+=i;
}
1---500000
IO 就是实现持久化的一种技术
2.文件:File
只能创建删除文件
只能获取文件的信息
isFile()
exsits()
createNewFile()
mkdirs()
如果通过输出流(向文件中写内容),如果文件不存在,会自动创建
必须保证 文件所在的目录必须存在
3.IO流对文件进行读写:
读取数据的格式
字节流:图片
InputStream
FileInputStream
OutputStream
FileOutputStream
字符流:读取文本文件
Reader
FileReader
Writer
FileWriter
处理流:就是给节点流进行外包装
Buffered
对象流:
a)要存储的对象对应Java类必须实现序列化接口
b)先把根据操作的文件构建节点流对象
再把节点流对象包装为对象流
Map:没有实现序列化接口
字节流复制文件
public class Test{
//srcFile="d:\\test.txt";
//targetFile="c:\\test.txt";
public void copy(String srcFile,String targetFile){
InputStream in=null;
OutputStream out=null;
try{
in=new FileInputStream(srcFile);
out=new FileOutputStream(targetFile);
byte[] b=new byte[1024];//不足1024 24 个字节
/*
int len=in.read(b);
while(len!=-1){
out.write(b,0,len);//24
len=in.read(b);
}
*/
while(true){
int len=in.read(b);
if(len==-1){
break;
}
out.write(b,0,len);
}
}catch(Exception ex){
}finally{
if(in!=null){
try{
in.close();
}catch(Exception e){
}finally{
in=null;
}
}
if(out!=null){
try{
out.close();
}catch(Exception e){
}finally{
out=null;
}
}
}
}
}
4.操作Excel文件90%有
第三方 jar 文件 poi
a)一定要分清楚 操作的excel 版本
.xls 低版本 HssfWorkbook
HssfSheet
HssfRow
HssfCell
.xlsx XssfWorkbook
XssfSheet
XssfRow
XssfCell
b)建议尽量使用低版本
c)读取或新建步骤:sheet、row、cell 下标都是从0开始
先获取其中 sheet页面
在获取sheet中行
在获取行中的列
在获取列中的值
5.如何使用第三方的jar文件
a)复制jar到项目中lib文件夹中(自己创建)
b)在要使用jar上面点击右键 ---build path-----add to build path
6.进程和线程:
a)进程:就是运行的一个程序
b)线程:是进程中的一个任务
c)关系:
一个进程,至少包含一个线程(主线程)
一个线程,属于一个进程,进程结束,所有进程中的线程结束
7.模拟一个人在听音乐,在吃苹果 在吃葡萄
8.简单的多线程程序
9.掌握使用多线程完成文件复制
10.生产者与消费者的关系
11.如何让一个对象失效
Student stu=new Student();
stu=null;
//可以调用,但是不一定执行
//java中垃圾回收是单独的一个子线程,在其中run方法中监视jvm的内存使用情况
System.gc();
12.如何创建一个线程
a)继承Thread类或实现Runnable接口
i)继承
public class My extends Thread{
public void run(){
//使用循环
}
}
或者
ii)接口
public class My implements Runnable{
public void run(){
//使用循环完成多次重复操作
}
}
b)创建线程对象
i) My my=new My();
ii) My my=new My();//一个任务
Thread t=new Thread(my);
c)启动:
i)my.start();//进入就绪状态
ii)t.start();
13.
a)线程的优先级:1-10表示 数字越大级别越高
但是我们只能设置级别,有CPU决定先执行谁
b)常用的方法
start();启动线程
static sleep();让当前线程休眠多少毫秒
join():加入其他线程,自己等待其他线程结束
run():执行任务的主体,有CPU调用
static yield() :暂停正在运行的方法 ,让cpu决定让谁执行
14.银行取钱:
15.使用多线程判断 1--1000之间的素数
a:for(int i=2;i<1000;i++){
for(int j=2;j<i;j++){
if(i%j==0){
continue a;
}
}
}
begin 1100
end 100200
15.统计 1--10000 相加和
long sum=0;
for(int i=1;i<100000000;i++){
sum+=i;
}
1---500000
阅读全文
0 0
- Java实训第十七天8/18
- 实训笔记第十七天
- Java学习第十七天
- java第十七天
- Java学习第十七天
- JAVA 攻城狮 第十七天
- 2017/8/9 第十七天
- Day17第十七天 java基础 -------JAVA类集
- 第十七天
- 第十七天
- 第十七天
- 第十七天
- 第十七天
- 传智博客JAVA基础第十七天
- java学习总结——第十七天
- Java基础第十七天--IO流1
- No_16_0314 Java基础学习第十七天
- java基础第十七天 io缓冲流
- 关于图的一些定义和表示
- 2017.8.21 弦论 思考记录
- 文章标题
- Java GC算法 垃圾收集器
- 传统Servlet获取表单数据
- Java实训第十七天8/18
- 【Java】ThreadLocal
- Unity I2 Localization 插件 含有变量处理办法
- BZOJ 1069 最大土地面积 (围成最大面积 计算几何)
- 深度学习笔记——why “deep”?
- ORACLE数据库卸载
- NS2 定时器:BackoffTimer/ DeferTimer/NavTimer/RxTimer/TxTimer/IFTimer
- 如何快速转载CSDN中的博客
- 524_测量onMeasure