Java--接口和类集框架
一、接口
接口是静态常量和抽象方法的集合。也就是说,接口中只能有静态常量和抽象方法。
public interface Pet {
public static final int A = 10;
public abstract void eat();
public abstract void play();
}
public class Dog extends SuperClass implements Pet, IPet{
@Override
public void eat() {
System.out.println("狗在啃骨头");
}
@Override
public void play() {
System.out.println("狗在陪人玩");
}
@Override
public void fun() {
}
}
注意:
1、类实现接口的时候,必须实行接口的所有的抽象方法,如果没有全部实行,则这个类要标记为抽象类。
2、接口可以继承接口。可以把父接口的抽象方法全部继承过来。
3、java中继承是单继承,但是实现接口的时候是多实现。换句话说:一旦涉及到接口,就是可以继承或者实现多个接口。类与类之间只能是单继承。
4、在接口只,静态常量的修饰 public static final均可以省略。省略之后也是公共的静态常量
5、在接口中,抽象方法的public abstract 也可以省略,省略之后也是公共的抽象方法。
6、在实际开发中,这些修饰符一般都是省略的。
7、一个类可以继承一个类的同时,再去实现多个接口。
6、在既有继承又有实现的时候,必须是先继承再实现。
二、集合框架
数组的缺点:
1、长度固定,没有办法改变数组的长度。
2、数组的长度很多时候无法满足具体的需求。
3、删除数据和添加数据比较麻烦。
java为了克服数组的缺点,就设计了一个集合框架。
最大优点:动态的去调整集合的容量。
集合只能存储对象!!!
不能存储基本数据类型
如果需要存入基本数据类型,那么就应该使用这些基本数据类型的相应的包装类。

注意:
1、在迭代元素的过程中,移除元素只能使用迭代器的remove()方法。会移除刚刚next过的那个方法。(必须先next再remove)
2、在迭代的过程中,禁止使用集合对象的移除方法。否则会抛出异常java.util.ConcurrentModificationException
3、迭代的过程,除了调用迭代器的remove,进来避免去添加元素。
Java--接口和类集框架的更多相关文章
- 第41节:Java当中的类集框架
Java当中的类集框架 类集框架,那么什么是类集框架,集合的种类有哪些,类集框架的基础结构. 类集框架是一组类和接口的集合,位于java.util包当中,是用来用户存储和管理对象的,在这个类集合框架中 ...
- java中的类集框架
1.什么是类集框架 1.是一组类和接口 2.位于java.util包当中 3.主要用于用户存储和管理对象 4.主要分为三大类——集合.列表和映射 2.类集框架图 虚线框的表示接口,实线框的表示实现类 ...
- 浅谈java类集框架和数据结构(1)
在另外一篇博客我简单介绍了java类集框架相关代码和理论. 这一篇博客我主要分析一下各个类集框架的原理以及源码分析. 一:先谈谈LinkedList 这是LinkedList源码的开头,我们能看到几点 ...
- java:类集框架
类集框架:jdk提供的一系列类和接口,位于java.util包当中,主要用于存储和管理对象,主要分为三大类:集合.列表和映射. 集合Set:用于存储一系列对象的集合.无序.不允许重复元素. 列表Lis ...
- 专题笔记--Java 类集框架
Java 类集框架 1. Java类集框架产生的原因 在基础的应用中,我们可以通过数组来保存一组对象或者基本数据,但数组的大小是不可更改的,因此出于灵活性的考虑和对空间价值的担忧,我们可以使用链表来实 ...
- 浅谈java类集框架和数据结构(2)
继续上一篇浅谈java类集框架和数据结构(1)的内容 上一篇博文简介了java类集框架几大常见集合框架,这一篇博文主要分析一些接口特性以及性能优化. 一:List接口 List是最常见的数据结构了,主 ...
- Java类集框架详细汇总-底层分析
前言: Java的类集框架比较多,也十分重要,在这里给出图解,可以理解为相应的继承关系,也可以当作重要知识点回顾: Collection集合接口 继承自:Iterable public interfa ...
- Java:类集框架中集合的学习
Java:类集框架中集合的学习 集合 Java:Set的学习 Set是类集框架中的集合类.集合是不按特定的方式排序,并且没有重复对象的一种类. Q:Set如何操作?Set中的不按特定方式排序是怎么排序 ...
- javase基础笔记4——异常/单例和类集框架
继承 extends final关键 多态 是在继承的基础上 接口 interface 异常 exception 包的访问可控制权限 private default protect public 异常 ...
- Java接口对Hadoop集群的操作
Java接口对Hadoop集群的操作 首先要有一个配置好的Hadoop集群 这里是我在SSM框架搭建的项目的测试类中实现的 一.windows下配置环境变量 下载文件并解压到C盘或者其他目录. 链接: ...
随机推荐
- flash as3 socket安全服务网关(socket policy file server)
关键字: SecurityErrorEvent socket as3 flash有着自己的一套安全处理模式,在socket方面,我这样的菜鸟无法理解他的好处:一句话,不怀好意的人如果想用flash写一 ...
- Android打开新的Activity并同时关闭当前Activity
Intent it = new Intent(); it.setClass(EditActivity.this, MainActivity.class); it.setFlags(Intent.FLA ...
- Android 移动缩放的ImageView
今天介绍一下Android中怎么实现ImageView的缩放和移动,自定义TouchImageView. public class TouchImageView extends ImageView { ...
- JavaScript编程异步助手:Promise
异步模式在Web编程中变得越来越重要,对于Web主流语言JavaScript来说,这种模式实现起来不是很利索,为此,许多JavaScript库(比如 jQuery和Dojo.AngularJS)添加了 ...
- opencv 工程的保存
一个项目的保存,只要保存工程底下的.CPP .h .dll .lib 输入输出文件即可 最终保存的文件
- Helloworld程序的创建以及配置文件的讲解
创建项目. create Project 选择创建的Project类别以及使用的SDK,可能SDK需要配置或者修改配置. 这个页面是问你是否使用模板创建. Command Line App 会自动创建 ...
- PHP time() 函数
定义和用法 time() 函数返回当前时间的 Unix 时间戳. 语法 time(void) 参数 描述 void 可选. 说明 返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 ...
- POJ 2752 - Seek the Name, Seek the Fame (KMP)
题意:给一个字符串s,问s的某个前缀与后缀相同的情况时,长度是多少. 此题使用KMP的next数组解决. next数组中,j=next[i],next[i]表示S[0...i-1]的某个后缀(字符串S ...
- mysql 1067 启动错误!!!
图二:服务器启动不成功 -- 解决方法
- hdu 2042
Ps:...好简单的一道题...直接AC,就是利用递归 代码: #include "stdio.h"int find(int num,int n);int main(){ int ...