教材内容总结

6.1  接口

1接口声明

接口使用关键字interface来进行声明

eg:interface  接口的名字

2接口体

接口体中包含常量的声明和抽象方法两部分(没有变量)

注意一定的要求:接口体中只有抽象方法,而且是public

接口体中常量一定是public,而且是static常量

常量的(public static,final)和方法中的(public abstract)完全可以省略

全加上的顺序是public final static int a

6.2  实现接口

1.在java中,一个类需要在类声明中使用关键字inplements声明该类实现一个接口,如果要实现多个,中间用逗号隔开

2.如果一个非抽象类实现了某个接口,那个该类必须重写接口中的所有方法,,,不仅去掉abstract,而且要加上public,(不能降低访问权限)

3如果一个类实现了一个类,但是没有重写所有接口中的方法,那么这和类必须是抽象类。    抽象类既可以重写接口中的方法,也可以直接继承

4程序可以用接口名访问接口中的常量,,,,如果一个类实现了接口,那么在该类中可以直接使用接口中的常量

5定义接口的同时,如果在接口的前面加上public,那么这样的接口就是一个public接口,可以被任何一个类实现,,,如果不加public修饰,那么就是友好接口,只能被同一包中的类实现

6如果父类实现了某个接口,那么子类自然实现了这个接口,不用再使用inplements声明

7接口也可以被继承,即一个接口是另一个接口的子接口,由于接口中的常量和方法都是public,所以子接口将继承父类中的所有常量和方法

8java提供的接口都在相应的包中,java不仅提供相应的类,也提供相应的包,都可以通过import语句来进行引用

eg:import java.to.*;不仅引入了java。to包中的类,也引入了包中的接口

6.3理解接口

1.  接口的思想在于他可以要求某些类具有相同名字的方法,但是方法具体的·1实现内容可以不同

6.4接口回调

1.接口属于引用型变量,接口变量中可以存放实现该接口的类的实例的引用;

2.在java语言中,接口回调指的是可以把实现某一个接口的类创建的对象的引用赋值给该接口声明的变量,那么该接口变量就可以调用被类实现的接口的方法。其实实际上,当接口变量调用被类实现的接口的方法的时候,其实就是通知相应的对象调用这个方法。

6.6接口与多态

由接口产生的多态主要是指不同的类在实现同一接口时,可能会有不同的实现方式,那么接口变量在回调接口方法的时候就可能产生不同的形态

6.7接口参数,

如果一个方法的参数是接口类型,那么可以将任何实现该接口的类的实例传给这个参数,之后就可以在这个方法中通过接口的变量调用实现接口类的重写的方法或新增的方法

6.8   abstract类和接口的比较

对于选择的问题,如果需要从父类继承一些变量或者是继承一些重要的非abstract方法,就可以考虑使用abstract方法,如果某个问题不需要继承,那只需要若干个类给出abstract方法的实现,那么就可以考虑使用接口

6,9面向接口编程

我们应该怎么建立正确的接口呢?

每当用户有新的需求的时候,就会导致修改类的某部分代码,那么就应当将这部分代码从类中分割出去,使他和程序中某些代码是松耦合关系,即将每种可能的变化对应的交给实现接口的类,(或是抽象类的子类)去负责完成。

在使用多态设计程序的同时,要熟练使用接口回调技术,以及面向接口编程思想,以便体现程序设计所提倡的开闭原则

解决问题

上传代码时,遇见了一些问题
**Could not resolve host: gitee.com**
我在百度上查询并实践了一下,但是问题并没有解决,所以我采取的办法是直接删除我在liunx上项目文件夹,并从windows直接拷贝项目文件夹。

代码托管

20175307《Java程序设计》第5周学习总结的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. python 去掉重复元素 学到再添加

    1. python 内置函数 set(可迭代对象) 返回无重复元素的集合.如在分类中,classification为类别数组 set(classification)为类别数 2.numpy np.un ...

  2. php 数据库乱码。。。php 移动临时文件

    数据库乱码,三个位置 处理好不会乱码 第一前台,传到后台: 第二后台,传到数据库: 第三数据库,存入数据库: 详解  https://www.cnblogs.com/zhoujinyi/p/46188 ...

  3. 透过实现小型打包工具理解webpack

    面试经常有问到 webpack,偶遇一篇比较有实用价值的且有利于理解的文章,现总结如下: 本篇文章中要实现的这个迷你打包工具,它主要能实现如下两个功能: ①.将 ES6 转换成 ES5: ②.支持在 ...

  4. python3 编码解码

    字符换算 比特(bit) 计算机最小的存储单位 字节(byte) 1 bit = 1 位 8 bit = 1 byte 1024 bytes = 1 kb 1024 kb = 1 mb 1024 mb ...

  5. 2019-04-15 Python之利用matplotlib和numpy的简单绘图

    环境:win10家庭版, Anocada的 Spyder 一.简单使用 使用函数 plt.polt(x,y,label,color,width) 根据x,y 数组 绘制直,曲线 import nump ...

  6. 细说@Html.ActionLink()的用法(转)

    细说@Html.ActionLink()的用法   一.@Html.ActionLink()概述 在MVC的Rasor视图引擎中,微软采用一种全新的方式来表示从前的超链接方式,它代替了从前的繁杂的超链 ...

  7. Backup &recovery备份和还原

    实践版本:MySQL5.7 备份类型(backup type)物理和逻辑备份(Physical Versus Logical Backup)        物理备份是指直接复制存储数据库内容的目录和文 ...

  8. 一般程序中的session

    在WebHandler中无法访问session: IRequiresSessionState必须实现这个接口(不包含任何方法的标记接口), 需要导入using System.Web.SessionSt ...

  9. sql 查询所有表以及表结构

    查询数据库中所有的表: as statu from [sysobjects] where [type] = 'u' order by [name] 查询表结构: --查询表结构 ALTER PROCE ...

  10. 打造RecyclerView的n级列表

    先上效果图: 1.该多级列表的优势: 支持无限级列表展开 基于一个recyclerView实现 可以自定义每一级item的样式,定制化更强 2.设计的思路 数据结构List,ItemBean类中有变量 ...