《Java相关课程系列笔记之一Java学习笔记教案.doc》由会员分享,可在线阅读,更多相关《Java相关课程系列笔记之一Java学习笔记教案.doc(70页珍藏版)》请在金锄头文库上搜索。
1、Java学习笔记Java相关课程系列笔记之一笔记内容说明4月18日的五天Java训练营(刘英谦老师主讲,占笔记内容10%);Java基础和面向对象(刘苍松老师主讲,占笔记内容40%);Java SE核心 I 和Java SE 核心 II(范传奇老师主讲,占笔记内容40%);其他视频及书籍资料(占笔记内容10%)目 录一、 Java技术基础11.1编程语言11.2 Java的特点11.3 Java开发环境11.4 Java开发环境配置21.5 Linux命令与相关知识21.6 Eclipse/Myeclipse程序结构3二、 Java语言基础42.1基础语言要素42.2八种基本数据类型42.3常
2、量和变量52.4运算符与表达式52.5编程风格62.6流程控制语句72.7数组82.8字符串82.9方法三要素92.10插入排序92.11冒泡排序92.12冒泡排序:轻气泡上浮的方式102.13二分法查找102.14 Java系统API方法调用112.15二进制基础112.16 Java基础其他注意事项11三、 面向对象133.1类133.2对象133.3包143.4方法及其调用143.5引用143.6访问控制(封装)143.7构造器143.8 super()、super和 this()、this153.9重载和重写163.10继承173.11 static203.12 final213.13
3、多态223.14抽象类223.15接口233.16内部类233.17匿名类243.18二维数组和对象数组253.19其他注意事项26四、 Java SE核心I274.1 Object类274.2 String类284.3 StringUtils类304.4 StringBuilder类304.5正则表达式314.6 Date类324.7 Calendar类324.8 SimpleDateFormat类334.9 DateFormat类334.10包装类344.11 BigDecimal类354.12 BigInteger类354.13 Collection集合框架354.14 List集合的实
4、现类ArrayList和LinkedList364.15 Iterator迭代器394.16泛型404.17增强型for循环404.18 List高级数据结构:Queue队列414.19 List高级数据结构:Deque栈414.20 Set集合的实现类HashSet424.21 Map集合的实现类HashMap434.22单例模式和模版方法模式45五、 Java SE核心II465.1 Java异常处理机制465.2 File文件类485.3 RandomAccessFile类505.4基本流:FIS和FOS525.5缓冲字节高级流:BIS和BOS535.6基本数据类型高级流:DIS和DOS
5、535.7字符高级流:ISR和OSW545.8缓冲字符高级流:BR和BW555.9文件字符高级流:FR和FW565.10 PrintWriter575.11对象序列化575.12 Thread线程类及多线程585.13 Socket网络编程625.14线程池645.15双缓冲队列641、 Java技术基础1.1编程语言机器语言:0 1在硬件直接执行汇编语言:助记符高级语言: (Java运行比C/C+慢)1)面向过程的高级语言:程序设计的基本单位为函数,如:C/C+语言。2)面向对象的高级语言:程序设计的基本单位为类,如:Java、C#。1.2 Java的特点平台无关性、简单性、面向对象、健壮性
6、、多线程、自动内存管理。平台无关性:指Java语言平台无关,而Java的虚拟机却不是,需要下载对应平台JVM虚拟机的。自动内存管理:对临时存储的数据自动进行回收,释放内存。如:引用类型的变量没有指向时,被回收;程序执行完后,局部变量被回收。1.3 Java开发环境Java Developement KitJava开发工具包,简称JDK,是由Sun公司提供的一个免费的Java开发工具,编程人员和最终用户可以利用这个工具来编译、运行Java程序。目前版本有JDK1.0、JDK1.1、JDK1.2、JDK1.3、JDK1.4、JDK1.5(J2SE5.0)、JDK1.6(J2SE6.0)、JDK1.
7、7(J2SE7.0)。JDK结构:JDK |-开发工具(Tools)命令:java、javac、jar、rmic . |- JRE(Java基本运行环境) |-系统API库,系统类库 | 系统带来的标准程序库,标准API |- J VM java虚拟机 java 语言的执行环境1.4 Java开发环境配置安装完JDK之后,不能立刻使用,需要设置环境变量:1)设置PATH:D:Javajdk1.6.0bin(指向JDK中bin文件夹,有各种编译命令)。2)CLASSPATH:告诉Java程序去哪里查找第三方和自定义类,如果 .class文件和类源文件在同一文件夹内,则不需要配置classpath
8、,后续有包,则需要。AWindows:在命令行执行set CLASSPATH=E:workspace1304bin (临时环境配置)java day02.Demo1u 注意事项:v E: set classpath= c: (不加分号就不找当前路径) = . ; c: ; d: ;(先找classpath,若无,再找当前路径)v C、D两盘有同名 . class 文件,classpath设置为D盘,而命令行窗口当前盘符为C盘,则JVM现找classpath路径,后找当前路径。BLinux:在控制台执行设置CLASSPATH环境变量,指向package所在的目录,一般是项目文件夹中的bin目录。
9、执行java package.ClassName (包名必须写)。 export CLASSPATH=/home/soft01/workspace/1304/bin (临时环境配置) java day01.HelloWorld java -cp /home/soft01/workspace/1304/bin day01.HelloWorld(二合一)u 注意事项:v Windows根目录是反斜线:v Linux根目录是斜线:/1.5 Linux命令与相关知识1)Linux无盘符,只有一个根目录(root)2)终端 = 控制台 = 命令行窗口3)pwd:打印当前工作目录,显示当前工作目录的位置4
10、)ls:列表显示目录内容,默认显示当前目录内容5)cd:改变当前工作目录;cd后不加参数=返回home文件夹;cd :返回home; cd /:切换到根目录;cd . :返回上一层目录(相对的);6)mkdir:创建文件夹(目录) 注意:目录 = 文件夹7)rm:删除文件;rm xx xx:可删多个文件; rm rf xx:-为减号,r表递归,f表强制8)cat xx:显示文本文件内容9)启动Java开发工具:cd/opt/eclipse ./eclipse . 表当前目录下10)绝对路径: /home (以 / 开始为绝对路径,相对于根目录) 相对路径:home (相对于当前工作目录)11)
11、home(用户主目录,用户的家):/home/username 如:/home/soft0112)主目录(home):有最大访问权限:什么都能干,增删改查、建目录等 其他地方:一般只能查看,不能增删改查、创建目录等1.6 Eclipse/Myeclipse程序结构Project项目文件 |- src源文件| |- Package包|-.java源文件 |- bin |- Package包|- .class字节码程序u 注意事项:v Myeclipse5.5消耗少,Myeclipse6.5最稳定2、 Java语言基础2.1基础语言要素1)标识符:给类、方法、变量起的名字A必须以字母或下划线或 $
12、 符号开始,其余字符可以是字母、数字、$ 符号和下划线。B只能包含两个特殊字符,即下划线 _ 和美元符号 $ 。不允许有任何其他特殊字符。C标识符不能包含空格。D区分大小写。2)关键字:只有系统才能用的标识符u 注意事项:v true、false、null不是关键字!是字面量。v main不是关键字!但是是一个特殊单词,可以被JVM识别,主函数是固定格式,作为程序的入口。3) 注释:单行注释:/ 多行注释:/* */ 文档注释:/*/u 注意事项:开发中类前、属性前、方法前,必须有文档注视。2.2八种基本数据类型1)四种整数类型(byte、short、int、long):byte:8位,用于表
13、示最小数据单位,如文件中数据,-128127short:16位,很少用,-32768 32767int:32位、最常用,-231-1231 (21亿)long:64位、次常用u 注意事项:v int i=5; / 5叫直接量(或字面量),即直接写出的常数。v 整数字面量默认都为int类型,所以在定义的long型数据后面加L或l。v 小于32位数的变量,都按int结果计算。v 强转符比数学运算符优先级高。见常量与变量中的例子。2)两种浮点数类型(float、double):float:32位,后缀F或f,1位符号位,8位指数,23位有效尾数。double:64位,最常用,后缀D或d,1位符号位,
14、11位指数,52位有效尾数。u 注意事项:v 二进制浮点数:1010100010=101010001.0*2=10101000.10*210(2次方)=1010100.010*211(3次方)= . 1010100010*21010(10次方)v 尾数: . 1010100010 指数:1010 基数:2v 浮点数字面量默认都为double类型,所以在定义的float型数据后面加F或f;double类型可不写后缀,但在小数计算中一定要写D或X.X。v float 的精度没有long高,有效位数(尾数)短。v float 的范围大于long 指数可以很大。v 浮点数是不精确的,不能对浮点数进行精确比较。3)一种字符类型(char):char:16位,是整数类型,用单引号括起来的1个字符(可以是一个中文字符),使用Unicode码代表字符,0216-1(65535)。u 注