接口、抽象类、泛型、hashMap
看到hashMap的put方法的第一行代码就懵逼了
就不继续往下看了
用简单的代码还原第一行代码
TsInter.java 接口
为什么要使用接口,比如写文章一样,我先列个大纲
//interface
public interface TsInter<K,V> {
V put(K key, V value);
V get(K key, V value);
}
TsSer.java 实现接口
大纲列好了,就要填充到里面内容了
这里实现接口的方式是个抽象类(抽象:从具体事物抽出、概括出它们共同的方面、本质属性与关系等,而将个别的、非本质的方面、属性与关系舍弃,这种思维过程,称为抽象。)
意思就是说这篇文章先要奠定一个感情基调或者价值观导向
//abs 只想到了put怎么写,还没想好get怎么写,用抽象类先实现了接口再说(抽象类的桥梁作用)
public abstract class TsSer<K,V> implements TsInter<K,V> {
public V put(K key, V value) {
throw new UnsupportedOperationException();
}
public V get(K key, V value) {
throw new UnsupportedOperationException();
}
}
Ts.java 继承抽象类
这个类的意思大概是,上面说的都对,我再补充以下几点。。。
public class Ts<K,V> extends TsSer<K,V>{
public V put(K key, V value) {
return value;
}
}
HelloWorld.java 调用
调用具体的方法
public class HelloWorld {
public static void main(String []args) {
Ts<Integer,String> t = new Ts<Integer,String>();
String s = t.put(1,"hello world").toString();
System.out.println(s);
}
}
小白。。。
接口、抽象类、泛型、hashMap的更多相关文章
- OpenJDK源码研究笔记(十四):三种经典的设计方法,接口,接口-抽象类-具体实现类,接口-具体实现类
在研究OpenJDK源码过程中,我发现常用的设计方法就是2种:接口,接口-抽象类-具体实现类 . 在一些其它开源框架和业务开发中,经常存在着第3种设计,接口-具体实现类. 1.只有接口,没有实现类. ...
- java 接口 继承 接口 抽象类 继承 实体类
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 接口 可以 继承 接口 抽象类 可以 实现 接口 抽象类 继承实体类 需要 实体类 有 ...
- 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)? 答:接口可以继承接口.抽象类可以实现(implements)接口,抽象类 ...
- 初识JAVA(【面向对象】:pub/fri/pro/pri、封装/继承/多态、接口/抽象类、静态方法和抽象方法;泛型、垃圾回收机制、反射和RTTI)
JAVA特点: 语法简单,学习容易 功能强大,适合各种应用开发:J2SE/J2ME/J2EE 面向对象,易扩展,易维护 容错机制好,在内存不够时仍能不崩溃.不死机 强大的网络应用功能 跨平台:JVM, ...
- Java面向对象的基本概念(对象、封装、继承、多态、抽象、接口、泛型)
对象:是一个自包含的实体,用一组可识别的特征和行为来标识. 类:具有相同的属性和功能的对象的抽象合集.(类关键字class,首字母大写). 实例:就是一个真实的对象. 实例化:创建对象的过程,关键字是 ...
- JavaSE习题 继承接口和泛型
问答题: 1.子类在什么情况下可以继承父类友好成员? 答:在同一个包内 2.子类通过怎样的方法可以隐藏继承的成员变量? 答:声明一个与父类相同变量名的成员变量 3.子类重写继承的方法原则是什么? 答: ...
- Java接口,抽象类
1.接口(interface),接口被用来建立类与类之间关联的标准. 2.抽象类(abstract class),只要类中有一个抽象方法,此类就被标记为抽象类.实际上抽象类除了被继承之外没有任何意义. ...
- PHP - 接口&抽象类
什么时候使用抽象类什么时候使用接口? .如果要创建一个模型,这个模型将由一些紧密相关的对象采用,就可以使用抽象类.如果要创建将由一些不相关对象采用的功能,就使用接口. .如果必须从多个来源继承行为,就 ...
- Web Service接口返回泛型的问题(System.InvalidCastException: 无法将类型为“System.Collections.Generic.List`1[System.String]”的对象强制转换为类型“System.String[]”)
在使用C#写Web Service时遇到了个很奇怪的问题.返回值的类型是泛型(我用的是类似List<string>)的接口,测试时发现总是报什么无法转换为对象的错误,百思不得其解. 后来在 ...
- Java 接口-抽象类解析
对于面向对象编程,抽象是它的三大特征(抽象.继承.多态)之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类. 这两者既相似又存异.诸位在初学的时候也会傻傻分不清接口与抽象类的区别,大 ...
随机推荐
- 事件,委托,action与func文章不错的
https://www.cnblogs.com/yinqixin/p/5056307.html https://www.cnblogs.com/BLoodMaster/archive/2010/07/ ...
- c++11实现一个简单的lexical_cast
boost中有一个lexical_cast可以用统一的方式来做基本类型之间的转换,比如字符串到数字,数字到字符串,bool和字符串及数字之间的相互转换.boost::lexical_cast的用法比较 ...
- (原创)谈谈boost.asio的异步发送
在上一篇博文中提到asio的异步发送稍微复杂一点,有必要单独拿出来说说.asio异步发送复杂的地方在于: 不能连续调用异步发送接口async_write,因为async_write内部是不断调用asy ...
- hive查询遇到java.io.EOFException: Unexpected end of input stream错误
hive查询遇到java.io.EOFException: Unexpected end of input stream错误 原因基本上有两个: 空文件 不完整的文件 解决办法: 删除对应文件- 参考 ...
- Android.mk简介
http://www.cnblogs.com/hnrainll/archive/2012/12/18/2822711.html Android.mk文件是GNU Makefile的一小部分,它用来对A ...
- js生成二维码实例
<!DOCTYPE html><html><head> <title></title> <meta charset=&qu ...
- VMware网络使用NAT模式
公司的网络中,要在本地安装一个Linux虚拟机,但是只分配给宿主机一个IP,那么怎么实现Linux虚拟机的网络访问呢? 使用NAT模式:这是VMware用于虚拟NAT网络下的虚拟交换机. 1.设置网络 ...
- Docker考前突击
dockerfile 介绍 镜像(Image) 容器(Container) 仓库(Repository)
- Loadrunner集合点Rendezvous知识
摘自: http://blog.csdn.net/richnaly/article/details/7967364 集合点的意思时等到特定的用户数后再一起执行某个操作,比如一起保存,一起提交(我们通常 ...
- [转]Spring MVC 教程,快速入门,深入分析
原文地址:http://elf8848.iteye.com/blog/875830 目录 一.前言 二.spring mvc 核心类与接口 三.spring mvc 核心流程图 四.spring mv ...