zoukankan      html  css  js  c++  java
  • 接口

    一、抽象类
        什么是抽象类?
          1.有abstract修饰的类就是抽象类
            1)有抽象方法的类一定是抽象类,抽象类不一定有抽象方法
             2)有构造器,但是不能实例化。
             3)抽象方法的关键字不能省略
          2.接口是特殊的抽象类,关键字是interface
            1)如果有方法,一定都是抽象方法*
            2)如果有属性,一定都是常量*
            3)没有构造器,不能实例化*
          3. 强调:有抽象方法的类一定是抽象类,
            但是抽象类中不一定要有抽象方法
          4. 抽象类可以被继承:如果子类是一个普通的类,那么应该
            重写父类的抽象方法,写出{} 
            如果子类是抽象类,符合抽象类的特点即可。 



    二、接口:interface
          特殊的抽象类,
        特殊在:如果有方法,一定是抽象方法,abstract关键字可以省略
            如果有属性,一定是常量,
            常量的修饰词:public static final 可以省略不写 
            常量的名字全都大写。
            没有构造器,不能实例化
            接口其实是一种协议,标准.
        接口与抽象类,类的关系. 



    三、面向对象的三大特征:
          继承,封装,多态
        继承的好处:可以不用修改一个类,利用继承的特点,可以
              扩展这个类,生成一个子类,有利于二次开发
        封装的好处:提高代码的重用性,减少冗余,减少代码的可见性,相对
              安全。
        多态?
          1. 对象的多态?
            不同父类型的引用指向同一个对象,会有不同的行为功能。
            如: 当这个人处在公司时,只能有在公司的某些行为
            同一个人在家时,只能有在家的某些行为 
          2.变量的多态?
            同一个变量指向不同的对象时,会有不同的行为。
       方法的重载?
          学生上学的行为
          骑自行车
          做公交车
          开车
      


      



    四、向上造型 
        1.父类型的变量指向子类型的对象 Aoo a=new Boo()
          1)在编译期间,变量调用的方法是父类型中的。
          2)运行期间,如果调用的方法是子类重写的,那么一定是调用子类的方法;
              如果没重写,那么调用的是父类中的方法
        2.变量调用的属性:一定是父类中的属性 ** 

    四)向下转型
         1)将父类型的变量所指向的对象,转换成子类型的变量
        Aoo a=new Boo();//上
        Boo b=(Boo)a; 下
       有可能会出现 ClassCastException异常 
        Aoo a=new Coo();
        Boo b=(Boo)a;
       为了避免这种情况发生,需要使用instanceof进行判断
      2)判断变量所指的对象是不是某一类型
        上述代码应该改成:
        Aoo a=new Coo();
        if(a instanceof Boo){ 
          Boo b=(Boo)a;
        }
      编译期间:javac.exe只检查代码的语法是否正确


    五)内部类
        1.概念:在类内部定义的类型,就叫内部类

        2.分类

          1)成员内部类:在类内部定义的,与方法并列的,是外部类的成员
          2)匿名内部类:没有名字,在方法中使用的
          可以创建接口的匿名子类
          可以创建抽象类的匿名子类
          可以创建普通类的匿名子类
        Foo foo=new Foo(){
          //重写方法
          public void run(){}
        };
    六、API:(application programming interface)
        应用重写编程接口,就是开发文档
        javaAPI内,包含了大量已经开发好的功能(被封装到类
        含有常用的API(字符串操作,集合操作,IO流
        常用的包:
        java.lang包:内部含有常用的类型,不需要导入包,可
        java.util包:常用的类型,Scanner,日期Data,Canle
        java.net包:socket套接字符等
        java.io:输入输出流等
        java.math:math类

  • 相关阅读:
    金思维仪器设备管理系统
    一道趣味数学题(二)
    三个和尚没水喝
    VBA从人民银行网站获取5个币种的历史汇率信息
    亿图图示专家 专业流程图,网络拓扑图,组织结构图设计软件
    Safari 近乎完美!闪电侠苹果Safari 4评测
    身体器官工作表一览,别熬夜
    Windows 7(32位)简体中文旗舰版OEM光盘
    金思维仪器设备管理系统产品上线啦
    VBA代码控制DTPicker控件的下拉日期表显示
  • 原文地址:https://www.cnblogs.com/xiaozelulu/p/8757995.html
Copyright © 2011-2022 走看看