一、抽象类

-------------------------------------

  1.抽象定义概述:抽象类时从多个事物中奖共性的,本质的内容抽取出来

    例如:狼和狗共性都是犬科,犬科就是抽象出来的概念

  2.抽象类:java中可以定义没有方法体的方法,该方法的具体实现由子类去完成,该方法称之为抽象方法,包含抽象方法的类就是抽象类

  3.抽象方法的由来:多个对象都具备相同的功能,但是功能的具体内容有所不同,那么在抽取的过程只能怪,只抽取的功能的定义,并未进行功能主题的抽取,那么只有功能的声明,没有功能主体的方法称之为抽象的方法

  4.抽象类的特点:(1)抽象类和抽象方法必须用abstract关键字来进行修饰

          (2)抽象方法只有方法声明,没有方法体,定义在抽象类中。

            格式: 修饰符  abstract 返回值类型 函数名(参数列表);

          (3)抽象类是不可以被实例化的,也就是不可以用new关键字来进行对象的创建

          (4)抽象方法通过其子类进行相关的实例化,而子类需要在覆盖掉抽象类中所有的 抽象方法之后才能创建对象,否则的话,子类也是抽象类

二、接口

------------------------------------------------------------------

  1、格式:interface{}

  2、接口中的成员修饰符是固定的

    成员变量:public static final

    成员函数:public abstract

    发现接口中的成员都是public的

  3、接口的出现将"多继承"通过另一种形式体现出来,就是"多实现"

  4、接口和抽象类的共性和区别:

    共性:都是不断抽取出来的抽闲概念

    区别一:抽象类体现的是继承关系,一个列只能是进行单继承

        接口的方法是抽象的,接口中的成员都有固定修饰符

java复习(3)继承下的更多相关文章

  1. java复习(3)继承

    一.继承为题的提出 ---------------------------------------------------- 我们知道面向对象的三大特性是:封装.继承和多态,可以知道继承在java应用 ...

  2. Java复习总结——继承

    访问权限 Java中有三个访问权限修饰符:private.protected以及public,如果不加访问修饰符,表示包级可见. 可以对类或类中的成员(字段以及方法)加上访问修饰符. 类可见表示其他类 ...

  3. java 复习001

    java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...

  4. java复习(1)---java与C++区别

    [系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...

  5. Java复习5.面向对象

    Java 复习5面向对象知识 20131004 前言: 前几天整理了C++中的面向对象的知识,学习Java语言,当然最重要的就是面向对象的知识,因为可以说Java是最正宗的面向对象语言,相比C++,更 ...

  6. JAVA接口的继承与集合

    复习 20190701 接口补充 一. java是单继承多实现 单继承: 一个类只能有一个父类 public class D extends D1 { } 2. 多实现 一个类可以同时实现多个接口 当 ...

  7. java复习面向对象(二)

    java复习面向对象(二) 1.static关键字 举例图片 静态变量 使用static修饰的成员变量是静态变量 如果一个成员变量使用了关键字static,那么这个变量不属于对象自己,而属于所在的类多 ...

  8. 关于Java中的继承和组合的一个错误使用的例子

    [TOC] 关于Java中的继承和组合的一个错误使用的例子 相信绝大多数人都比较熟悉Java中的「继承」和「组合」这两个东西,本篇文章就主要就这两个话题谈论一下.如果我某些地方写的不对,或者比较幼稚, ...

  9. java中的继承与oc中的继承的区别

    为什么要使用继承? 继承的好处: (1)抽取出了重复的代码,使代码更加灵活 (2)建立了类和类之间的联系 继承的缺点: 耦合性太强 OC中的继承 1.OC中不允许子类和父类拥有相同名称的成员变量名:( ...

随机推荐

  1. 3分割线左右间距(LinearLayoutManager.VERTICAL)

    <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...

  2. C++入门经典-例3.19-使用break跳出循环

    1:代码如下: // 3.19.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...

  3. 构建基于Electron开发的软件遇到的问题

    构建pdman时,报了好些错. 主要还是网络问题和版本不一致导致的. 前提 npm设置淘宝源,自行搜索. 版本 上面是官方要求的node环境. 需要首先安装nvm, brew install nvm ...

  4. HTML控件 隐藏

    div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白: style="visibility: none;" document.getElementById ...

  5. 【Spark机器学习速成宝典】模型篇08支持向量机【SVM】(Python版)

    目录 什么是支持向量机(SVM) 线性可分数据集的分类 线性可分数据集的分类(对偶形式) 线性近似可分数据集的分类 线性近似可分数据集的分类(对偶形式) 非线性数据集的分类 SMO算法 合页损失函数 ...

  6. ajaxform和ajaxgird中添加数据

    ajaxform添加数据 ajaxform.setRecord(response.getAjaxDataWrap("dataWrapBill").getData()); ajaxg ...

  7. IDEA项目追踪快捷键

    1.查看某个方法在哪里被调用: 在方法上右键选择FindUsages: 快捷键,在方法上Ctrl+G 2.从Ctroller方法直接跳过接口找到实现类方法: 在方法上右键:选择GoTo>Impl ...

  8. 创建一个包含TC的Alpine镜像

    镜像的创建 更换镜像至ustc(为了测试时的速度) 安装musl-dev make gcc linux-headers bison flex以使TC可以编译 拷贝进TC的源代码 进入源代码文件夹进行编 ...

  9. 字典的常见操作<二>

    <1>len() 测量字典中,键值对的个数 <2>keys 返回一个包含字典所有KEY的列表 <3>values 返回一个包含字典所有value的列表 <4& ...

  10. TimePicker 时间选择器

    用于选择或输入日期 固定时间点 提供几个固定的时间点供用户选择 使用 el-time-select 标签,分别通过star.end和step指定可选的起始时间.结束时间和步长 <el-time- ...