第十三章 JAVA程序执行内存分析.pptVIP

  • 3
  • 0
  • 约1.08万字
  • 约 66页
  • 2017-07-05 发布于湖北
  • 举报
应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 应用层 传输层 网络层 物理+数据链路层 OSI参考模型 TCP/IP参考模型 最底层 Socket通信模型 Server Client socket.close() socket.close() OutputStream InputStream OutputStream InputStream ServerSocket s(port #) s.accept() /等待连接 Socket对象 Socket(host,port # (Attempt to connect) AWT Component MenuComponent Container Window Panel Frame Dialog Applet Button TextArea Label TextField List ... ... ... ... 事件监听 事件源对象 hashcodes table hashcodes table 对象 对象 对象 对象 对象 每一个对象都有独一无二的hashcodes,通过它可以找到所在对象的位置 对象转型casting(TestAnimals) class Animal{} class Dg extends Animal{} Animal a=new Animal();// a=new Dg();// Dg d1=(Dg)a;// 对象转型casting(TestAnimals) Animal a Animal name furcolor 程序中把a当成一只普通的Animal,不能访问Dg中的成员 Dg 不能访问 表明 实质 只能访问作为父类的那部分成员 Dg d1 动态绑定和多态(TestPolymoph) Cate c name:catname eyeColor:blue name:l1 Anima pet lady l1 实质上指向 code seg Anima enjoy Cate enjoy Do enjoy 根据实际对象类型来调用 方法 星际的多态应用 父类GameObject draw() 继承 使用多态 异常的概念 public void someMethod() throws SomeException{ if(someCondition()){ throw new SomeException(错误原因); } } 声明该方法可能抛出的异常 构造并抛出异常对象 抛出异常 try{ someMethod(); }catch(SomeException e){ //异常处理代码; } 调用该方法时试图捕捉异常 定义处理异常的代码 异常的分类 Throwable Error Exception RuntimeException 可抛出的 系统错误,处理不了 能处理的错误 经常出的错误,可以不catch 必须得catch的异常 运行时异常 非运行时异常 method() throws SomeException{......} 包含 异常类的父类 异常的捕获和处理 try {//可能抛出异常的语} catch(SomeException e1) {......} catch(SomeException e2) {......} finally{......} 统一的出口,都要被执行,可进行资源的清除工作 readFile() throws IOException{......} method1() throws IOException{ readFile()} method2() throws IOException{ method1()} public static main(String s){ try{ method2() }catch(IOException e){......} } 抛异常 抛异常 抛异常 捕获 处理 main方法可不处理,向外抛 int[] s; 数组定义 s=new int[5]; xxx s stack heap 自动初始化都为0 Date[] days; 数组分配空间和赋值 days=new Date[3]; for(int i=0;i3;i++){ days[i]=new Date(2004,4,i+1);} xxx xxx

文档评论(0)

1亿VIP精品文档

相关文档