学习日历 -2024/9/12

泛型

泛型的好处

  • 统一数据类型
  • 把运行时期的问题提前到了编译期间,避免了强制类型转换可能出现的异常,因为在编译阶段类型就能确定下来

泛型的细节

  1. 泛型中不能写基本数据类型
  2. 指定泛型的具体类型后,传递数据时,可以传入该类类型或者子类类型
  3. 如果不写泛型,类型默认是Object

泛型类-泛型方法

import java.util.ArrayList;

public  class ListUtil<T>{
    public static<E> void addAll(ArrayList<E> list,E...e){
        for (E e1 : e) {
            list.add(e1);
        }
    }
}

import java.util.ArrayList;

public class ListUtilTest {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        ListUtil.addAll(list,13,45,546,132,4);
        System.out.println(list);
    }
}

泛型接口的两种使用方式

  1. 实现类给出具体的类型
  2. 实现类延续泛型,创建实现类对象再确定类型

public class MyArrayList1 implements List<String>{}
MyArrayList<String> list = new ArrayList<>();

泛型的通配符

泛型不具备继承性,数据具有继承性.
利用泛型方法有一个小弊端,此时它可以接收任意的数据类型
此时就可以使用泛型的通配符
?表示不确定的类型,但是也可以进行类型的限定
? extends E 表示可以传递E或者E所有的子类类型
? super E 表示可以传递E或者E所有的父类类型

import java.util.ArrayList;

public class a04Test2 {
    public static void main(String[] args) {
        ArrayList<Ye> list1 = new ArrayList<>();
        ArrayList<Fu> list2 = new ArrayList<>();
        ArrayList<Zi> list3 = new ArrayList<>();

        method(list1);
        method(list2);
        method(list3);

    }

    public static<E> void method(ArrayList<? extends Ye> list){

    }
}

SQL

  • DQL -语法

DQL-基本查询

1.查询多个字段
SELECT 字段1,字段2,字段3...from 表名;
SELECT * FROM 表名; //显示所有字段
2.设置别名
SELECT 字段1[AS 别名],字段2[AS 别名2] ... FROM 表名;
3.去除重复记录
SELECT DISTINCT 字段列表 FROM 表名;

select id as '编号',name as '姓名' from emp;as可以省略

posted @ 2024-09-13 08:37  XYu1230  阅读(4)  评论(0编辑  收藏  举报