
JAVA基础
红袜子i
菜鸡码农
展开
-
JAVAWEB——注解,注解的作用,自定义注解,利用反射解析注解
一.什么是注解,注解作用注解就是符合一定格式的语法 @xxxx如:@override :重写父类的方法@Test:测试模块@webServlet:代替web.xml的文件内容注解作用:可以代替配置文件注解:主要是给JVM查看,具有一定的功能作用。注解是给程序员进行提示使用。关于配置文件与注解开发的优缺点:优点:开发效率高,成本低。缺点:耦合性大并且不利于后期维护。例如我们在使用@webServlet的时候,会在源代码中修改文件的路径位置。然而web.xml就不要使用编译器打原创 2020-11-11 20:44:46 · 1389 阅读 · 0 评论 -
JAVA基础——Map集合,Map集合特点,根据键找值,寻找键和值,HashMap,TreeMap,LinkedHashMap的基本功能,hashtable与hashMap区别
一、 Map集合概述和特点Map接口概述将键映射到值的对象一个映射不能包含重复的键每个键最多只能映射到一个值Map接口和Collection接口的不同Map是双列的,Collection是单列的Map的键唯一,Collection的子体系Set是唯一的Map集合的数据结构(TreeMap,hashMap)值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效二、 Map集合的功能概述1. 添加功能V put(K key,V value):添加元素。原创 2020-10-13 20:20:08 · 1986 阅读 · 5 评论 -
JAVA基础——设计模式(单例设计模式,装饰设计模式,模板设计模式,简单工厂模式,工厂方法模式)
一、 单例设计模式单例设计模式:保证类在内存中只有一个对象。如何保证类在内存中只有一个对象呢?(1)控制类的创建,不让其他类来创建本类的对象。也就是让构造方法私有化。private(2)在本类中定义一个本类的对象。Singleton s;(3)提供公共的访问方式。public static Singleton getInstance(){return s}单例写法两种:(1)饿汉式 开发用这种方式。 public static void main(String[] args) {原创 2020-10-09 17:34:07 · 166 阅读 · 0 评论 -
JAVA基础——反射,反射详细内容介绍,类加载,反射获得有参无参构造,获取方法,获取属性,越过泛型检查,动态代理
一、 类的加载概述和加载时机类的加载概述:当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载:就是指将class文件读入内存,并为之创建一个Class对象。任何类被使用时系统都会建立一个Class对象。连接:验证 是否有正确的内部结构,并和其他类协调一致准备 负责为类的静态成员分配内存,并设置默认初始化值解析 将类的二进制数据中的符号引用替换为直接引用初始化:默认初始化,构造初始化。加载时机创建类的实例。(new原创 2020-10-09 16:24:47 · 391 阅读 · 0 评论 -
JAVA基础——枚举,枚举实现的三种方式,常用枚举类方法,枚举注意事项
一、 自己实现枚举类枚举概述:是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。举例:一周只有7天,一年只有12个月等。回想单例设计模式:单例类是一个类只有一个实例那么多例类就是一个类有多个实例,但不是无限个数的实例,而是有限个数的实例。这才能是枚举类。格式一:(无参构造)public class Week1 { public static final Week1 MON =new Week1(); public static final Week1 TUE =new Week1原创 2020-10-07 18:06:56 · 2845 阅读 · 1 评论 -
JAVA基础——多线程(二)计时器,多线程之间的通信,线程组,线程池的概念
一、 单例设计模式单例设计模式:保证类在内存中只有一个对象。如何保证类在内存中只有一个对象呢?(1)控制类的创建,不让其他类来创建本类的对象。也就是让构造方法私有化。private(2)在本类中定义一个本类的对象。Singleton s;(3)提供公共的访问方式。public static Singleton getInstance(){return s}单例写法两种:(1)饿汉式 开发用这种方式。 public static void main(String[] args) {原创 2020-10-04 14:32:34 · 348 阅读 · 0 评论 -
JAVA基础——多线程(一)开启线程的两种方式,休眠,守护,加入,礼让线程介绍,线程同步问题,线程安全问题,线程死锁问题
一、 多线程的引入什么是线程线程是程序执行的一条路径, 一个进程中可以包含多条线程多线程并发执行可以提高程序的效率, 可以同时完成多项工作多线程的应用场景红蜘蛛同时共享屏幕给多个电脑迅雷开启多条线程一起下载QQ同时和多个人一起视频服务器同时处理多个客户端请求二、 多线程并行和并发的区别并行 就是两个任务同时运行,就是甲任务进行的同时,乙任务也在进行。(需要多核CPU)并发是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间间隔较短,使人感觉两个任务原创 2020-10-04 13:33:56 · 352 阅读 · 0 评论 -
JAVA基础——IO流(三)——序列流及序列化,内存输出流
一、 序列流什么是序列流序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推.使用方式整合两个: SequenceInputStream(InputStream, InputStream)案例:未使用序列流前FileInputStream fileInputStream1 =new FileInputStream("a.txt"); //创建字节输入流关联a.txtFileOutputStream fileO原创 2020-09-26 22:21:37 · 375 阅读 · 0 评论 -
JAVA基础——IO流(二)字符流,字节流的拷贝,定义字符数组,ReadLine,newLine(),LineNumberReader
一、 概念及分类概念IO流用来处理设备之间的数据传输Java对数据的操作是通过流的方式Java用于操作流的类都在IO包中流按流向分为两种:输入流,输出流。流按操作类型分为两种:字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的字符流 : 字符流只能操作纯字符数据,比较方便。以下篇章都是介绍IO流的字节流和字符流IO流常用父类字节流的抽象父类:InputStreamOutputStream字符流的抽象父类:ReaderWriter原创 2020-09-25 22:38:03 · 401 阅读 · 0 评论 -
JAVA基础——IO流(一)字节流,四种拷贝方式,字节流拷贝图片,mp3方式
一、 概念及分类概念IO流用来处理设备之间的数据传输Java对数据的操作是通过流的方式Java用于操作流的类都在IO包中流按流向分为两种:输入流,输出流。流按操作类型分为两种:字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的字符流 : 字符流只能操作纯字符数据,比较方便。以下篇章都是介绍IO流的字节流和字符流IO流常用父类字节流的抽象父类:InputStreamOutputStream字符流的抽象父类:ReaderWriter原创 2020-09-25 22:25:32 · 1307 阅读 · 0 评论 -
JAVA基础——集合框架(三)Set集合,HashSet ,LinkedSet,TreeSet集合的介绍及原理
一、 Set集合概述及特点因为Set集合的API方法和Collection集合一模一样。故没有没有它的特殊的方法。所以我们只要学它的两个子类,一个HashSet和另外一个TreeSet二、 HashSet存储字符串并遍历实现Set接口,由哈希表(实际是一个hashmap对象)支持,它不保证set的迭代顺序;特别是它不保证该顺序恒久不变。此类允许下使用null元素。案例:HashSet<String> hashSet =new HashSet<String>(); b原创 2020-09-22 08:39:32 · 812 阅读 · 1 评论 -
JAVA基础——泛型,泛型的使用(定义在类,方法以及接口上),通配符的作用
一、 泛型的由来即使用泛型的由来泛型的由来:通过Object转型问题引入早期的Object类型可以接收任意的对象类型,但是在实际的使用中,会有类型转换的问题。也就存在这隐患,所以Java提供了泛型来解决这个安全问题。泛型的使用把泛型定义在类上格式:public class 类名<泛型类型1,…>注意事项:泛型类型必须是引用类型当使用类去创建对象时,指定泛型。那么传入的是什么就是什么泛型public class Tool<Q> { private Q q; p原创 2020-09-19 10:58:51 · 841 阅读 · 0 评论 -
JAVA基础——集合框架(二)List集合(Vector集合,ArrayList集合,LinkedList集合)各集合方法介绍,去除重复元素,栈堆模拟,foreach语句,数组转集合及集合转数组
一、 List集合特有的功能概述因为List集合继承与Collection,所有有些方法类似。详细介绍一些List特有的功能。List也是一个接口。故不能新建对象,所以我们调用子类ArrayListvoid add(int index,E element)在指定位置添加元素List list =new ArrayList(); list.add("a"); //从0开始 list.add("b"); list.add("c"); list.add("d"); list.add原创 2020-09-19 10:45:29 · 711 阅读 · 0 评论 -
JAVA基础——集合框架(一)对象数组建立,迭代器原理,集合的遍历之集合转数组遍历,迭代器遍历,Collection的基本功能测试
一、引入案例一:需求:5个学生请把这5个学生的信息存到数组中,遍历数组,获取每一个学生信息第一步:创建Student类public class Student { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { re原创 2020-09-16 17:45:57 · 440 阅读 · 0 评论