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盘或者其他目录. 链接: ...
随机推荐
- ZOJ 2477 Magic Cube 暴力,模拟 难度:0
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1477 用IDA*可能更好,但是既然时间宽裕数据简单,而且记录状态很麻烦,就直接 ...
- async = require('async')
var mongoose = require('mongoose'), async = require('async'); mongoose.connect('localhost', 'learn-m ...
- long long 读数scanf的转换 #define
在win32的评测系统下,long long scanf 要用"%I64d" ,而网上评测和考试要用"%lld",因此,难免有点麻烦,还会runtime err ...
- sql alter表字段处理
--添加字段 ALTER table WCOLLECTION add CLT_ID int null default(0) --将已有字段类型为 NULL 修改为 NOT NULLalter tabl ...
- HDU 3341 状态压缩DP+AC自动机
题目大意: 调整基因的顺序,希望使得最后得到的基因包含有最多的匹配串基因,使得所能达到的智商最高 这里很明显要用状态压缩当前AC自动机上点使用了基因的情况所能达到的最优状态 我最开始对于状态的保存是, ...
- C语言基础--switch
switch格式: switch (条件表达式) { case 整数: // case可以有一个或多个 语句; break; case 整数: 语句; break; default: 语句; brea ...
- NIO基础
通道和缓冲区 概述 通道 和 缓冲区 是 NIO 中的核心对象,几乎在每一个 I/O 操作中都要使用它们. 通道是对原 I/O 包中的流的模拟.到任何目的地(或来自任何地方)的所有数据都必须通过一个 ...
- 框架之 spring
spring有两大特性,其一为ioc,其二为aop 1.ioc的理解 ioc为依赖注入,他的好处就是把创建对象的权利交给spring去管理,这样的好处是 将应用程序中的对象解耦,传统的方式程序中的对象 ...
- C++学习之静态成员
一.静态数据成员 C++允许将类的数据成员定义为静态成员.静态数据成员是属于类的,整个类只有一个备份,相当于类的全局变量,能够被该类的所有对象共用. 1.静态成员的声明 在类数据成员的声明前加上关键字 ...
- UIViewController添加子控制器(addChildViewController)
// // TaskHallViewController.m // yybjproject // // Created by bingjun on 15/10/27. // Copyright ...