A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© suweifeng 中级黑马   /  2016-1-16 22:04  /  313 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.内部类:在类中重新定义一个类
  规则:内部类可以直接访问外部类的成员,包括私有
       之所以可以直接访问外部类的成员,是因为内部
        类持有了一个外部类的引用,格式 外部类.this
        外部类要访问内部类,必须建立内部对象
  格式:当内部类定义在外部类的成员位置上,而且非私有,可以在
        可以在外部其他类中,直接建立内部对象
        外部类名.内部类名 变量名=外部类对象.内部类对象
        outer.inner in=new outer().new inter();
        当内部类被static修饰,只能直接访问外部类的static成员
        直接访问内部类的非静态成员
        new outer.inter().function;
        外部其他类直接访问内部类的静态成员
        outer.inner.function()
  注意:当内部类中定义了静态成员,内部类必须是static
        当外部类的静态方法访问内部类时,内部类也必须是静态的
2.内部类定义原则:事物中内部还有事物
3.匿名内部类:就是内部类的简写格式
  局部成员中的内部类不能静态
  内部类定义在局部时,不可以被修饰符修饰
  可以直接访问外部类中的成员,因为持有外部类的引用
  但不可以访问他所在的局部中的变量,只能访问final修饰的局部变量
**?内部类在访问他所在的局部的变量,只能访问最终的变量(final)
4.定义匿名内部类的前提:内部类必须是继承一个类或者实现接口
5.匿名内部类格式:new 父类或者接口(){ 定义子类的内容};
6.其实匿名内部类就是一个匿名子类对象。
  匿名内部类方法最好不超过3个
实例:text.function().method();
      text类有一个静态的function方法,method是function这个方法运算后
        的结果是一个对象,而且是一个inter类型的对象
        因为只有inter类型的对象,才可以使用method方法
7.异常概述:就是程序在运行时出现的不正常情况
        java对不正常情况进行描述的对象体现
        问题的划分:error类进行描述(严重)对于error一般不编写针对性代码
                    exception类进行描述(不严重)对于excption可以使用针对性代码进行处理
  无论error或者exception都有一些共性内容
trowable{
error--
exception--
}
*用父类名作为子类的后缀名 方便开发
8.异常的处理:try{需要被检查的代码}
              catch{处理异常的代码(处理方式)}
              finally{一定会执行的语句}
9.异常声明,throws exception//在功能上通过throw的关键字声明了该功能可能出现问题
10.对多异常的处理:1声明异常更为具体的异常,这样处理更为具体
                   2如果多个catch快的异常出现继承关系,父类异常catch放在最下面不要定义多余的catch快
在后面throw特点的异常,在主函数中catch与之相对应的函数
11.自定义异常:因为项目会出现特有的问题,可以按照java的思想对特有
   的问题,进行自定义的异常现象
throw关键字自定义异常对象必须给出对应的处理方法
必须是自定义继承exception类
特点:因为异常类和异常对象都被抛出
他们都具备可抛性,这个可抛性是throwable特有的
12.throws使用的函数上
   throw使用在函数内
   throws后面是异常类
   throw后面是异常对象
13.Exception中有一个特殊的子类RuntimeException运行时异常
   如果在函数内容出现异常,函数可以不用声明,编译一样通过
   如果声明了该异常,异常时可以不用处理
14.自定义异常时如果该异常发送,无法再继续进行运算
   就让自定义继承RuntimeException
   对于异常分两种:1.编译时异常
                   2.运行时异常-RuntimeException以及其子类
15.instanceof:它的作用是判断其左边对象是否为其右边类的实例,返回boolean类型的数据
   boolean result = object instanceof class

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马