zoukankan      html  css  js  c++  java
  • 笔记—讲面向对象

    2011年8月1日11:21:01 听方老师讲面向对象

    overload :同一种方法不同的参数类型,返回值,作用于不同的。

    override :当子类中的方法不能满足要求时,在子类中,重写父类的方法

     

    final class:不能被继承,可以被实例化

    final Method:防止被重写,

    final Variety:最终变量,常量

     

    abstrct class:必须被继承,不允许被实例化。

    继承了抽象类,但是没有实现所有的方法的类,也必须被声明为抽象类abstract class

    abstract Method:没有方法体。

     

    sealed class:abstract class正好相反,也就是说不可以被继承。

     

    virtual Keyword:

    virtual关键字用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。

    子类看不到父类的方法

     

    interface:接口是契约和行为模板。

    在日常生活中,单继承是个例,多继承是普遍现象。

    多继承容易使系统混乱。

    接口用来模拟多继承,所以说具备了抽象类的一些特征。

    一个类只能继承一个类,但可以实现多个方法。

     

    接口中的方法都是抽象的,所以abstract关键字可以不用写。

    有抽象方法的类一定是抽象类。

     

     

    抽象类里的方法一定是public abstract方法。

      

    Abstract class

    Interface

    实例化

    不能

    不能

    一种继承关系,一个类只能使用一次继承关系。可以通过继承多个接口实现多重继承

    一个类可以实现多个interface

    数据成员

    可有自己的

    静态的不能被修改即必须是static final,一般不在此定义

    方法

    可以私有的,非abstract方法,必须实现

    不可有私有的,默认是public,abstract 类型

    变量

    可有私有的,默认是friendly 型,其值可以在子类中重新定义,也可以重新赋值

    不可有私有的,默认是public static final 型,且必须给其初值,实现类中不能重新定义,不能改变其值。

    设计理念

    表示的是"is-a"关系

    表示的是"like-a"关系

    实现

    需要继承,要用extends

    要用implements

  • 相关阅读:
    Ubuntu1804命令行安装vmtool
    Pyspider的基本使用
    HDU-4507
    CF264BGood Sequences
    CF285D.D. Permutation Sum
    我罗斯方块最终篇(Player类、Game类)
    ES学习(三)--查询
    ES学习(二)--增删改查
    GIT学习
    ES学习(一)--核心概念,NRT、索引、分片、副本
  • 原文地址:https://www.cnblogs.com/fanyong/p/2158962.html
Copyright © 2011-2022 走看看