java学习笔记
最近学习java的IO操作,现整理如下
1 输入输出
java的库将程序与输入有关的类都从InputStream继承,与输出有关的类都从OutStream继承。
以前没有掌握的相关类 SequenceInputStream 将两个或更多的inputStream 转换成单个对象使用。
2 增添属性和有用的接口
装饰器 : 利用层次化对象动态透明的增加单个对象的能力的做法叫做“装饰器”
3 输入
对一个文件进行输入操作,需要一个FileInputStream 对象,为提高速度需要对文件进行缓冲处理 BufferedInputStream ,为了以格式化的形式读取数据,我们使用了DataInputStream 来进行处理。
DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(args[0])));
4 快速文件输入
class InFile extends DataInputStream {
public InFile(String fileName) throws FileNotFoundException{
super(new BufferedInputStream(new FileInputStream(fileName)));
}
public InFile(File file) throws FileNotFoundException{
super(new BufferedInputStream(new FileInputStream(file.getPath())));
}
}
这样设计可以避免每次重复够造 。
同样快速文件输出可以按照上述的格式进行构造。
5 Reader Writer
inputstream 是字节流 ,二reader是字符流 传递unicode 。
要使用readLine()应该使用BufferedReader ,二不应该再使用DataInputStream
6 重导向标准IO package cn.bupt.io;
import java.io.*;
public class Redirect {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
BufferedInputStream in = null ;
try {
in = new BufferedInputStream(new FileInputStream(args[0]));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
PrintStream out = null ;
try {
out = new PrintStream(new BufferedOutputStream(new FileOutputStream(args[1]))) ;
} catch (FileNotFoundException e) {
e.printStackTrace();
}
System.setIn(in) ;
System.setOut(out) ;
System.setErr(out) ;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = null ;
try {
whil
相关文档:
看到一道java题,感觉很不错,我在原来的版本上增加了些代码,一起来看看下面的代码将输出什么
class Father{
int i,j;
Father(){
add(1);
}
void add(int v){
i+=v;
j+=v;
}
void print(){
System.out.println("i:="+i);
System.out.println("j:="+j);
}
}
class C ......
这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励。
一:无返回值的存储过程
存储过程为:
CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS
BEGIN
......
本文来自和你在一起的博客,原文标题:《JVM调优总结(二)-一些概念》。本文总结了JVM概念中的Java对象的大小,以及三种引用类型的定义与区分。 基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任 ......
这个问题在于 在Frame中添加组件时,每个组件先设定了位置,但是添加到Frame中后始终会出现问题。
例如:
class MyGame extends Frame
{
MyGame()
{
Label c[] = new Label[8];
for(i = 0; i<8; i++)
{
c[i] = new Lab ......
如何用Java获得一个域名的IP地址呢?提供这个功能的类叫做java.net.InetAddress。我们假设现在有这样一个域名,它用一个静态的
getByName来重新获得一个InetAddress,然后得到可以读出的IP地址。下面的代码是非常基本的命令行。
import java.net.InetAddress;
import java.net.Unknow ......