java基础笔记new

上传人:xins****2008 文档编号:105201032 上传时间:2019-10-11 格式:DOC 页数:6 大小:35KB
返回 下载 相关 举报
java基础笔记new_第1页
第1页 / 共6页
java基础笔记new_第2页
第2页 / 共6页
java基础笔记new_第3页
第3页 / 共6页
java基础笔记new_第4页
第4页 / 共6页
java基础笔记new_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《java基础笔记new》由会员分享,可在线阅读,更多相关《java基础笔记new(6页珍藏版)》请在金锄头文库上搜索。

1、Class类对象:代表某个类型的运行时实例,是在第一次使用某个类型之前会被自动创建所有的类型都有Class对象,在内存中一个类型只有一个Class对象,甚至基本类型也有Class对象获得Class对象的三种方式:1 类名.class2 对象.getClass()3 Class.forName(完整类名)包装类:有8个包装类,正好对应8种基本数据类型包装类的作用:就是基本类型和引用类型互相转换,这个过程叫做装箱和拆箱装箱=基本转引用拆箱=引用转基本重要方法Integer.parseInt() Double.parseDouble() String.valueOf()内部类实例内部类:好处就是可以

2、直接访问外部类的对象的成员创建对象的方式是,先创建外部类对象,然后用外部类对象.new() 创建内部类对象如果外部类的成员变量和内部类的成员变量重名,必须使用“外部类名.this.成员”静态内部类:不能直接访问外部类对象的成员创建对象直接 用完整类名(外部类名.内部类名)new即可局部内部类:就是声明在方法内部的类,仅限于方法内部使用,局部内部类只能直接使用方法中的final常量匿名类就是动态的声明并创建一个类的子类或接口的实现类,也是内部类的一种设计模式的简单工厂模式:调用者直接可以通过一个静态方法得到某个对象的实例,不用自己new对象异常的层次Throwable所有错误和异常的根类Runt

3、imeException运行时异常(只要是这个类的子类都划分为运行时异常)Exception异常(可以用程序处理的错误)Error错误(致命异常)编译检查异常(不是运行时异常,就一定是检查异常)Java对异常的默认处理:当程序发生异常,JVM虚拟机会自动new出一个对应的异常对象,然后抛出,如果程序没有处理异常,程序自动终止。运行时异常的特点:编译的时候不做检查,运行时才会抛出异常编译检查异常的特点:如果调用的某个类的某个方法是抛出检查异常,那么必须对这个方法调用做异常处理(try.catch或继续向上抛出),否则就通不过编译异常处理语句try 可能会发生异常的语句 catch (异常类型 变

4、量) 当发生此异常做的异常处理 catch (异常类型2 变量) 当发生此异常做的异常处理 catch (异常类型3 变量) 当发生此异常做的异常处理 finally 永远都会一定执行的语句如果一个catch块匹配,那么就不会去判断其他catch块,父类异常的catch必须要方法子类异常的下面throws 异常类1,异常类2, :异常抛出声明,写在方法声明中,目的就是在方法中不做trycatch处理,而是让方法的调用者来处理这个异常子类覆盖方法不能比父类方法抛出更多异常(更多指的是子类抛出的异常必须是父类抛出异常可以兼容的)throw手动产生异常:在程序运行期间,手动发生异常并抛出(一般用来做

5、异常转换,就是把一个异常转换为另一个异常再抛出)throw 异常类的对象Java操作文件File类: 即可以操作文件也可以操作文件夹,它可以代表一个存在的文件(目录),也可是指向一个不存在的(抽象)Java的日期表示方式:是用一个long型数字表示,比如说2007-5-9 14:37:28的表示方法是和1970-1-1 0:0:0这个基点相差的毫秒数表示Stirng和Date转换: SimpleDateFormat课后练习1:TestDir4,仿照dir命令输出目录下的文件和文件夹信息课后练习2:TestDir5,递归输出某个目录下的文件和文件夹名称(包括子目录)课后练习3:TestDir7,

6、递归删除目录IO输入输出流字节流:处理最小单位是字节0255(适合于二进制数据)字符流:处理最小单位是字符065535(适合于纯文本数据)在windows系统中,所有的文件输出流都是自动创建文件的(如果文件不存在)Windows换行符 rnLinux和unix换行符 n节点流:能够直接和数据打交道处理流:通过节点流间接和数据打交道,常见BufferedReader BufferedWriterInputStreamReader字节流转字符流的工具类序列化:把对象做持久化存储反序列化:从持久化存储中读取出对象序列化的类型必须实现Serializable接口Math类:提供大量的数学操作的方法和属

7、性Math.floor截断取整,返回不大于本身的最大整数Math.round 四舍五入取整Math.ceil 进位取证产生任意的两个整数之间的随机整数= (int) (大值-小值+1) * Math.random()+小值)课后练习1:TestCopyFile3复制文件9.txt,形成一个新文件10.txt,而且每行加一个四位行号0001 00 21 0521课后练习2:产生20个四位大写字母和数字混合验证码课后练习3:产生一个某个随机价格,用户猜测输入,如果大了,提示“大了”,如果小了,提示“小了”,如果相等,提示“恭喜恭喜,猜中”,只有5次机会课后练习4:TestString2字符串练习S

8、tring是不可变类,字符串一经创建,不能再修改,只能产生新的字符串对象StringBuffer是可变类,可以直接修改对象的内容,大量的字符串拼接一律使用StringBuffer的append,提高效率,是线程安全的StringBuilder和StringBuffer功能完全相同的,只不过是线程不安全的集合:数组是定长,集合类是可变长的集合类的根类是Collection接口有两个常用子接口:Set接口:特点是第一存储元素没有顺序,第二不存储重复元素(哈希码相同且equals为true才算重复)常用实现类:HashSet:数据结构是哈希表TreeSet:数据结构是树形结构List接口:特点有顺序

9、,能存储重复元素常用实现类:ArrayList:数据结构是一个线性表,访问元素快,插入和删除元素慢(线程不安全)LinkedList:数据结构是一个链表,访问元素慢,插入和删除元素快(线程不安全)Vector:功能同上(线程安全)Map集合:存储的是键值对(key-value),键在集合中是不能重复的常见的实现类HashMap:线程不安全的HashTable:线程安全的泛型(generic):把类型本身也当参数传递,目的减少和Object类型转换,不支持基本类型课后练习2014-8-25:TestStudent读取文本数据文件,返回集合类对象课后练习2014-8-26:课后练习1:TestPr

10、operties.java传入一个城市名称,返回城市代码课后练习2:编写一个方法,传入两个字符串,返回两个字符串匹配的所有子字符串课后练习3:编写一个工具类BeanCopyUtils.java,能够直接复制任意两个对象的同名属性值 反射:属性Field 方法Method 构造器Constructor 都看成一个对象,目的是动态操作属性方法构造器Annotation 注解,元数据:是一种特殊注释,可以在程序运行期间读取出内容,也是一种数据类型Junit单体测试技术并发:同时有多个XXX(应用程序,进程,线程)执行一个应用程序对应多个进程一个进程包含多个线程,线程是最小的程序流main方法本身也是

11、一个线程,叫做主线程实现多线程的两种方式1 继承Thread类,覆盖run方法(线程体)2 实现Runnable接口,覆盖run方法(线程体)启动新的线程,start方法,但是同一个线程对象不能重复启动线程休眠:强制让当前线程让出CPU,等待一定时间,再恢复运行 Thread.sleepsynchronized同步块:这个语句块在一个线程执行期间,不允许其他线程执行,表示线程是同步,也可以叫做线程安全服务器端ServerSocket客户端Socket网络编程:Socket编程(套接字)GUI 图形用户界面AWT 最早的GUI技术SWING 基于AWT,界面美观一些SWT 比SWING更强大JavaFX 最新技术JDK1.7以上

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号