黑马程序员技术交流社区
标题:
关于自定义类加载器
[打印本页]
作者:
王宝龙
时间:
2012-10-7 18:15
标题:
关于自定义类加载器
这是张老师第47个视频的前一部分内容
首先我们定义一个类ClassLoaderAttachment
在工程下面建了itcastlib文件夹。
import java.sql.Date;
public class ClassLoaderAttachment extends Date
{
public ClassLoaderAttachment(long l)
{
super( l);
}
public String toString()
{
return "hello,itcast";
}
}
复制代码
然后用下面代码将上一个类的.class 文件进行加密
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class MyClassLoader
{
public static void main(String[] args) throws Exception
{
String srcPath =args[0];
String destDir = args[1];
FileInputStream fis = new FileInputStream(srcPath);
String destFileName = srcPath.substring(srcPath.lastIndexOf('\\')+1);
String destPath = destDir + "\\" + destFileName;
FileOutputStream fos = new FileOutputStream(destPath);
cypher(fis,fos);
fis.close();
fos.close();
System.out.println(new ClassLoaderAttachment(100).toString());
}
private static void cypher(InputStream ips ,OutputStream ops)
throws IOException
{
System.out.println("dfdfd");
int b = -1;
while((b=ips.read())!=-1)
{
ops.write(b^0xff);
System.out.println("xxx");
}
}
}
复制代码
运行上面的程序使args[0]=D:\ProgramFiles\E_Workspace\Javaenhance\bin\cn\itcast\day2\ClassLoaderAttachment.class
args[1] = itcastlib
程序运行都正常连测试的输出 都打印了。
但是唯独itcastlib文件夹下什么都没有!!!!!!我要的那个加密后的.class文件没有
大帮帮忙!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2