传智播客的JAVA SE基础视频 1 5 自学笔记
昨天晚上开始学习传智播客的JAVA SE基础视频,到今天晚上已经把基础视频1-5看完了,因为之前段段续续的自学过C和JAVA,所以前面这几讲都看得挺快的,第5讲讲多线程,就有些复杂了。
2009-12-20 00:08:37
OS环境变量:OS定义的变量,可被应用程序使用。
set:查看
set path=%path%;....\jdk\bin; // =两边不能有空格
在命令行窗口下设置时,不影响其他程序,只对当前命令行窗口有效。
path:java命令路径
classpath:JVM查找类的路径。一般要加上.;表示当前路径。classpath中不能有空格,也不能有中文字符。
java -verbose:可以查看JVM启动加载过程。
JVM运行过程:
代码装入(ClassLoader)---->代码校验(字节码验证)---->执行(解释器)
反编译工具
JDK自带的javap命令可以反编译,可惜反编译的结果只有方法声明,无方法的具体内容,用java的反射功能自己也可以实现。
JAD工具(很强大,让我震撼了一把,不知道实现的原理是什么):jad -s java Test.class。 居然可以完全反编译,得到完整的源码。
FrontEnd:JAD的GUI版
java标示符:字母、数字、下划线、$(有点新奇)组成,不能以数字开头,不能是关键字。
所以byte、short、char运算时,都先转换为int类型。
System.out.println('a'+1); // 输出98,因为'a'先转为int
System.out.println(""+'a'+1); // 输出a1
java不允许嵌套定义变量(和C/C++不同)。
<<左移, >>右移, >>>无符号右移。 (java没有无符号数)。
移位运算适用于byte, short, char, int, long,低于int的,都先自动转换为int。
对int移位a>>b,先将b对32去模,a>>33和a>>1效果一样。
对long移位a>>b,先将b对64去模,a>>65和a>>1效果一样。
switch():只接受byte, short, char, int, enum型。
数组:java数组都有个length属性。
数组拷贝:JAVA SE 1.6之前使用System.arraycopy(),1.6后可以使用java.util.Arrays.copyOf(),看Arrays的源码,可知Arrays
相关文档:
1如何将字串 String 转换成整数 int?
A. 有两个方法:
1). int i = Integer.parseInt([String]); 或
i = Integer.parseInt([String],[int radix]);
2). int i = Integer.valueOf(my_str).intValue();
注: 字串转成 Double, Float, Long 的方法大同小异.
2 如何将整数 int 转换成字串 String ?
A. 有叁种方法:
1.) ......
package io;
import java.io.*;
/**
* @author 高枕吴忧
* 利用缓冲区原理,BufferedInputStream,
* 实现的文件字节流读取功能示范
*
*/
public class BufferedInOutputStream {
public BufferedInOutputStream() {
ioTest2();
}
public void ioTest2() {
FileInputStream in = null ;
Buffered ......
任何项目开发中,在一个集合或数组中循环查找,搜索目标数据,是经常用到的。如果搜索的数据范围比较小,那么不管什么算法,对于今天的计算机来说,性能上基本差别不大,但是如果数据量达到几百万,甚至更大,那么算法的选择和优化就显得比较重要。有空之余测试了下顺序搜索和二分搜索的性能,竟然发现效率差异在1500倍左右 ......
在程中我们常取一些资源的绝对径,下面给出一个简单方便的工具类来帮助我们轻松的找到我想的资源。(适用于CS/BS应用)
import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
/** *//**
* @author <a href="mailto:maryang@live.cn" mce_hre ......
http://renyanwei.javaeye.com/blog/258304
我们知道,在JAVA中,子类可以继承父类,如果子类声明的方法与父类有重名的情况怎么办,大伙儿都知道要是重写,但是实际上这又分为两种情况,就是方法和变量在继承时的覆盖和隐藏问题,这些概念性的东西看似无聊,但是在面试或者是SCJP认证题中围绕这些是会经常碰到的,所以这里 ......