IO
1.ByteStream不能write boolean // 转换为String或int
2.DatainputStream read/DataOutputStream write时可以进行类型转换readBoolean,readByte,readshort,readchar,readint,(readline不是readString)
's
extends,implements,throws
overriding
返回类型变小,访问权限变大,异常类型变小
Exception
1.Exception vs error
(1)JVM崩溃是错误
(2)错误不能被程序中捕获
(3)异常能被程序捕获
2.Exception vs Normal problems
(1)文件结束是正常问题
(2)正常问题不能导致程序中断
(3)异常能够导致程序中断
3.runtime Exception 运行时异常
(1)在运行时抛出异常
(2)和程序运行有关
(3)不能继续运行程序
(4)不同点:不能被声明,不能被捕获
NullPointerException,ArithmeticException
泛型
(1)T:类的成员变量,方法的参数,返回类型,局部变量
(2)forbidden:#不能使用原始类型,#不能实例化,#不能声明static#不能创建数组,#不能创建,捕获,抛出异常
(3)不能重载
GUI
(1)java.awt.*
#abstract window toolkit
#basic UI component of java
#有限的components
#不同平台上的外观不同
#没有菜单,滑动条等组件
(2)Swing
#纯Java
#基于AWT
#比AWT慢
(3)swing vs awt
awt | swing | |
安装 |
重量级; 引用操作系统的组件 |
轻量级; 顶级容器(top-level container )引用操作系统的组件, 大部分组件是Java自己生成 |
速度 |
快 |
jdk1.4前慢,现在的版本快 |
portablity | 外观和行为都依赖于操作系统 | 独立于操作系统 |
可视化发展 | 没有 | Jbuilder,NetBeans,eclipse ve |
组件 | 没有自己的组件 | 有大量的组件 |
使用前要记得new一下,要不然抛出NullPointerException
(4)top container vs intermediate container
top#connected with os
#not contained in anything else
#jframe,japplet,jdialog
中间级的#管理组件 #能够被组合 #jpanel,jsplitpane,jscrollpane
(5)layout manage
#作用:1.有序的管理组件 2.设置组件的大小和位置 3.能够随容器的大小变化和位置变化改变
4.每一个容器都有一个layout manager
#只有flowlayout可以保持组件原来的大小
(6)Event
#low-level event vs 语义事件
1.key event/mouseevent
2.由输入设备引发
3.细节比语义事件的多
4.ActionEvent,documentEvent是语义事件
5.有一个组件引起
6.包括一系列的low-level event
(7)inner class
#在外层类的里面定义
#优点:1.可以使用外层类的private成员
#特点:1.inner class必须有外部类的对象调用,不能只创建一个内部类的对象调用
SQL
(1)CRUD
create:create table insert data
read: select data
updata: updata data
delete:delete data
socket
(1)标示主机的方式
IP地址,主机名,域名