java复习(3)继承下
一、抽象类
-------------------------------------
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)继承下的更多相关文章
- java复习(3)继承
一.继承为题的提出 ---------------------------------------------------- 我们知道面向对象的三大特性是:封装.继承和多态,可以知道继承在java应用 ...
- Java复习总结——继承
访问权限 Java中有三个访问权限修饰符:private.protected以及public,如果不加访问修饰符,表示包级可见. 可以对类或类中的成员(字段以及方法)加上访问修饰符. 类可见表示其他类 ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
- java复习(1)---java与C++区别
[系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...
- Java复习5.面向对象
Java 复习5面向对象知识 20131004 前言: 前几天整理了C++中的面向对象的知识,学习Java语言,当然最重要的就是面向对象的知识,因为可以说Java是最正宗的面向对象语言,相比C++,更 ...
- JAVA接口的继承与集合
复习 20190701 接口补充 一. java是单继承多实现 单继承: 一个类只能有一个父类 public class D extends D1 { } 2. 多实现 一个类可以同时实现多个接口 当 ...
- java复习面向对象(二)
java复习面向对象(二) 1.static关键字 举例图片 静态变量 使用static修饰的成员变量是静态变量 如果一个成员变量使用了关键字static,那么这个变量不属于对象自己,而属于所在的类多 ...
- 关于Java中的继承和组合的一个错误使用的例子
[TOC] 关于Java中的继承和组合的一个错误使用的例子 相信绝大多数人都比较熟悉Java中的「继承」和「组合」这两个东西,本篇文章就主要就这两个话题谈论一下.如果我某些地方写的不对,或者比较幼稚, ...
- java中的继承与oc中的继承的区别
为什么要使用继承? 继承的好处: (1)抽取出了重复的代码,使代码更加灵活 (2)建立了类和类之间的联系 继承的缺点: 耦合性太强 OC中的继承 1.OC中不允许子类和父类拥有相同名称的成员变量名:( ...
随机推荐
- 3分割线左右间距(LinearLayoutManager.VERTICAL)
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...
- C++入门经典-例3.19-使用break跳出循环
1:代码如下: // 3.19.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...
- 构建基于Electron开发的软件遇到的问题
构建pdman时,报了好些错. 主要还是网络问题和版本不一致导致的. 前提 npm设置淘宝源,自行搜索. 版本 上面是官方要求的node环境. 需要首先安装nvm, brew install nvm ...
- HTML控件 隐藏
div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白: style="visibility: none;" document.getElementById ...
- 【Spark机器学习速成宝典】模型篇08支持向量机【SVM】(Python版)
目录 什么是支持向量机(SVM) 线性可分数据集的分类 线性可分数据集的分类(对偶形式) 线性近似可分数据集的分类 线性近似可分数据集的分类(对偶形式) 非线性数据集的分类 SMO算法 合页损失函数 ...
- ajaxform和ajaxgird中添加数据
ajaxform添加数据 ajaxform.setRecord(response.getAjaxDataWrap("dataWrapBill").getData()); ajaxg ...
- IDEA项目追踪快捷键
1.查看某个方法在哪里被调用: 在方法上右键选择FindUsages: 快捷键,在方法上Ctrl+G 2.从Ctroller方法直接跳过接口找到实现类方法: 在方法上右键:选择GoTo>Impl ...
- 创建一个包含TC的Alpine镜像
镜像的创建 更换镜像至ustc(为了测试时的速度) 安装musl-dev make gcc linux-headers bison flex以使TC可以编译 拷贝进TC的源代码 进入源代码文件夹进行编 ...
- 字典的常见操作<二>
<1>len() 测量字典中,键值对的个数 <2>keys 返回一个包含字典所有KEY的列表 <3>values 返回一个包含字典所有value的列表 <4& ...
- TimePicker 时间选择器
用于选择或输入日期 固定时间点 提供几个固定的时间点供用户选择 使用 el-time-select 标签,分别通过star.end和step指定可选的起始时间.结束时间和步长 <el-time- ...