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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© heimafeng 中级黑马   /  2015-8-16 04:40  /  321 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.使用abstract关键字修饰;可以修饰“类”,可以修饰“成员方法”;
   abstract class A{
    abstract void show();
   }
2.“抽象类”的特点:
   1).不能被实例化,只能用于被继承;
   2).可以包含:成员变量、构造方法、成员方法、抽象方法;
   3).可以不包含抽象方法;
3.“抽象方法”的特点
   1).没有方法体;abstract void show();
   2).必须被子类重写。除非子类也是个抽象类;
  3.子类继承抽象类使用关键字:extends,仍然是单继承;
  4.一个子类继承 了一个抽象类,必须实现抽象类中所有的抽象方法;
    否则子类也必须是抽象的。
   例如:
    abstract class A{
     abstract void show();
    }
    class B extends A{} //编译错误。类B不是抽象的,继承类抽象类必须重写抽象类中的所有抽象方法。
    abstract class B extends A{} //编译通过。类B没有重写父类中的抽象方法,但类B是抽象的。
  5.abstract关键字不能和哪些关键字共存:
   1.private:抽象方法就是用来被子类重写的,而私有方法不能被子类重写;
   2.final:抽象类和抽象方法就是用来被子类继承和重写的,而fianl类和final方法不能
                                 被继承和重写;
   3.static:static修饰的方法在没有任何对象的情况下就会被分配内存空间;而抽象方法
                                  没有方法体,无法分配空间;
三.接口
1.使用interface关键字定义:只能修饰“类”:
   interface IA{
   }
2.“接口”的特点:
   1).不能被实例化,没有构造方法,只能用于子类“实现”;
   2).可以包含:
    A.成员变量(常量):隐式的定义为:public static final。
                   上述三个关键字中任何一个都可以不写,系统会自动添加;
      例如:
      interface IA{
       public int num1 = 10;  //OK
       static final int num2 = 20; //OK
       final int num3 = 30;  //OK
       public final num4 = 40;  //OK
       int num5 = 50;   //OK
      }
    B.抽象方法:隐式的定义为:public abstract。可以省略,系统会自动添加

2 个回复

倒序浏览
问下基础测试是几道题
回复 使用道具 举报
顶一下。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马