接口、抽象类、泛型、hashMap
2024-09-10 22:19:51
看到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);
}
}
小白。。。
最新文章
- 从淘宝 UWP 的新功能 -- 比较页面来谈谈 UWP 的窗口多开功能
- Gerrit增加SSL证书
- OC内存管理(ARC)
- 第二百三十四天 how can I 坚持
- ccr test
- Android Studio:Unable to add window android.view.ViewRootImpl$W@5e2d85a -- permission denied for this window 第一行代码
- BT基础知识简介
- QML Flipable、Flickable和状态与动画 下篇
- Lintcode212 Space Replacement solution 题解
- 【bzoj 1414】对称的正方形 单调队列+manacher
- GIS案例学习笔记-三维生成和可视化表达
- Python之黏包
- python3 使用ldap3来作为django认证后台
- mongodb导入json文件
- poj1292
- Atcoder Grand Contest 010 C - Cleaning 树贪心(伪)
- 什么是BFC(Block Formatting Context)
- web移动前端页面,jquery判断页面滑动方向
- Tempter of the Bone(dfs+奇偶剪枝)题解
- window上创建python3虚拟环境