zoukankan      html  css  js  c++  java
  • 数据结构与框架-抽象类与接口

    一、抽象类

    类用abstract修饰的,且至少有个抽象方法。

     1 /**
     2  * 抽象类
     3  */
     4 public abstract class Simple {
     5     public String aMethod() {
     6         return "in aMethod";
     7     }
     8     
     9     public abstract String bMethod();
    10     
    11     /*
    12      * Simple simple = new Simple();
    13      * 因为Simple是一个抽象类,它类中有个方法缺少定义,所以无法实例化Simple类
    14      * Simple simple = new Simple();//是非法的
    15      * 但Simple simple;是合法的,但没有意义(现在)。
    16      */
    17 
    18     /*
    19      * 抽象类的作用:
    20      * 通过继承来扩充它,子类可以对抽象方法提供自己的定义。
    21      * 例子:类Child1,Child2是Simple的子类
    22      */
    23 
    24     public class Child1 extends Simple {
    25         @Override
    26         public String bMethod() {
    27             return "in bMethod of Child1";
    28         }
    29         
    30     }
    31     
    32     public class Child2 extends Simple {
    33         
    34         @Override
    35         public String bMethod() {
    36             return "in bMethod of Child2";
    37         }
    38         
    39     }
    40     
    41     /*
    42      * 下面的定义将有意义:
    43      * Simple simple ;
    44      * int code;
    45        if(1 == code){
    46         simple = new Child1();
    47        }
    48        else if(2 == code){
    49         simple = new Child2();
    50        }
    51        simple.bMethod();
    52      */
    53 
    54 }

    二、接口

    1、接口中所有方法都是抽象的,因此不能被实例化。

    2、如果一个类实现了接口中的部分方法,那么这个类必定是抽象类,因此不能被实例化。

  • 相关阅读:
    spring无法接收上传文件
    springcloud feign增加熔断器Hystrix
    mybatis调用存储过程(@Select方式)
    spring在注解标注的方法上加切面
    java注解Annotation
    java包装类
    JZ-C-43
    JZ-C-42-Plus
    JZ-C-42
    JZ-C-41-Plus
  • 原文地址:https://www.cnblogs.com/liji275137657/p/3711746.html
Copyright © 2011-2022 走看看