![](https://box.kancloud.cn/bca9b81e7c375612e8e8560b96ce1434_682x394.png)
泛型
~~~
package arraylist.a5;
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
ArrayList<Ls> ff=new ArrayList<Ls>();//通过泛型将类型定下来,不用强转了
Ls ls1=new Ls("薯片",5f);
ff.add(ls1);
//Ls cls=(Ls)ff.get(0);//不用强转了
Ls cls=ff.get(0);
System.out.println(cls.getMingcheng());
}
}
//零食
class Ls{
private String mingcheng;
private float jiage;
Ls(String mingcheng, float jiage) {
super();
this.mingcheng = mingcheng;
this.jiage = jiage;
}
public String getMingcheng() {
return mingcheng;
}
public void setMingcheng(String mingcheng) {
this.mingcheng = mingcheng;
}
}
//颜料
class Yl{
private String mingcheng;
private float jiage;
private String yanse;
Yl(String mingcheng, float jiage, String yanse) {
super();
this.mingcheng = mingcheng;
this.jiage = jiage;
this.yanse = yanse;
}
}
~~~
![](https://box.kancloud.cn/a24ae5d954c39243822770d9dea61e85_97x80.png)
反射机制
~~~
package arraylist.a6;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
Bh<String> hw1=new Bh<String>("货物1");
hw1.lxmc();
}
}
//玩具
class Wj{
public void wan(){
System.out.println("正在玩游戏");
}
public int jiafa(int a,int b){
return a+b;
}
}
//百货
class Bh<L>{
private L l;
Bh(L l){
this.l=l;
}
public void lxmc(){
System.out.println("类型是:"+l.getClass().getName());//取类型名称
/*Method []a=l.getClass().getDeclaredMethods();
for(int i=0;i<a.length;i++){
System.out.println("函数名:"+a[i].getName());
}*/
}
}
~~~
![](https://box.kancloud.cn/2c5929a03b55108da14462708efc149d_309x66.png)
~~~
package arraylist.a6;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
//Bh<String> hw1=new Bh<String>("货物1");
Bh<Integer> hw2=new Bh<Integer>(123);
Bh<Wj> hw3=new Bh<Wj>(new Wj());
//hw1.lxmc();
//hw2.lxmc();
hw3.lxmc();
}
}
//玩具
class Wj{
public void wan(){
System.out.println("正在玩游戏");
}
public int jiafa(int a,int b){
return a+b;
}
}
//百货
class Bh<L>{
private L l;
Bh(L l){
this.l=l;
}
public void lxmc(){
System.out.println("类型是:"+l.getClass().getName());//取类型名称
Method []a=l.getClass().getDeclaredMethods();//用数组来接收类中方法的数量
for(int i=0;i<a.length;i++){
System.out.println("函数名:"+a[i].getName());
}
}
}
~~~
![](https://box.kancloud.cn/97b817d0634ec2915af30670ce5ef07e_292x121.png)
- 书写心得
- 基础回顾
- 异常的处理
- equils方法
- 集合类
- ArrayList的遍历和添加
- ArrayList的删除插入
- 实例:食品库存管理
- HashMap
- 集合类的区别和选择
- 泛型和反射机制
- 图形化用户界面(GUI)
- JFrame容器
- 边界布局管理器
- 流式布局管理器
- 网格布局管理器
- Jpanel面板
- 文本框和标签
- 单选按钮和复选按钮
- 下拉列表框和滚动条
- 拆分窗口
- 聊天窗口
- 用户登录界面
- 记事本界面
- 线程
- 创建线程的方法
- 线程的优先级
- 线程的睡眠
- 线程的让步与阻塞
- 买票问题
- 生产消费问题
- IO流
- 字符流
- 字节流
- 缓冲流
- 数据流传输
- 转换流
- 空字符串区别
- Print流
- Object
- IO流补充
- 绘图技术和事件处理机制
- 绘图基础-绘制图形
- 绘图基础-绘制图像
- 绘图基础-绘制文字
- 事件处理-事件监听
- 事件处理-控件事件
- 事件处理-键盘事件
- 事件处理-鼠标事件
- 事件处理-窗口事件
- 记事本
- 坦克大战
- 阶段1
- 阶段2
- 阶段3
- 阶段4
- 阶段5
- 阶段6
- 阶段7
- 阶段8
- 阶段9
- 阶段10
- 阶段11
- 阶段12
- 阶段13
- 阶段14
- SQL Server 2005
- 简易学生管理系统
- 阶段(1)-显示
- 阶段(2)-查询
- 阶段(3)-添加
- 阶段(4)-删除
- 阶段(5)-修改
- 简易餐饮管理系统
- 阶段-01
- 阶段-02
- 阶段-03
- 阶段-04
- Index.java
- Login.java
- Main.java
- MyFont.java
- ImagePanel.java
- Conn.java
- Moxing.java
- 网络编程基础
- 互发信息(1)-传输
- 互发信息(2)-互发
- 互发信息(3)-GUI
- 互发信息(4)-对象流
- 网络聊天工具
- 阶段--01--界面
- Server
- Index
- Client
- Login
- Chat
- List