Java
文章平均质量分 84
Java学习
poixao
这个作者很懒,什么都没留下…
展开
-
Java 内存布局
值拷贝与引用拷贝数组是引用类型1.基本数据类型,直接在栈中分配值2.引用类型,先在堆中开辟了一个数据空间(对数据的操作都在堆中进行),然后把该数据空间地址给栈中对应的变量名3.值拷贝:基本数据类型是直接将值进行拷贝,不会对源数据造成影响4.引用拷贝:引用类型拷贝,拷贝的是数据空间地址,也就是两个变量操作的是同一个数据空间,自然其中一个变量操作改变数据,会对另一个变量造成影响二维数组的内存布局1.在堆中创建一个长度为行个数大小的一维数组(假设为A数组)2.A数组中每个元素再指向一个长度为列个原创 2022-02-28 23:05:40 · 358 阅读 · 0 评论 -
Java常用类
Java常用类常用类Object类getclass方法hashcode方法toString方法equals方法finalize方法包装类包装类的含义包装类对应装箱与拆箱Integer缓冲区包装类的常用方法Math类Arrays类BigInteger类BigDecimal类Date类Calendar类LocalDateTimeSimpleDateFormat类System类总结常用类Object类getclass方法返回Class类型判断两个对象的类型是否相同hashcode方法to原创 2022-02-27 19:01:06 · 199 阅读 · 0 评论 -
Java-String类
Java-String类String类String结构剖析String创建剖析String对象特性String常用方法可变字符串StringBufferStringBuilder总结 API解释public int length()返回字符串的长度。public char charAt(int index)根据下标获取字符。public boolean contains(String str)判断当前字符串中是否包含str。public char[] toCharA原创 2022-02-27 18:01:06 · 204 阅读 · 0 评论 -
正则表达式
正则表达式正则表达式语法分组正则表达式分类字符匹配符选择匹配符限定符定位符捕获分组非捕获分组非贪婪匹配应用Pattern类Matcher类反向引用在String中使用正则表达式替换匹配分割字符匹配符符号解释[]可接收的字符列表[abc] 接收abc中任意1个字符[^]不可接收的字符列表 [^abc] 不接收abc中任意1个字符-连字符 a-c a到c任意一个小写字符.匹配除\n以外的任何字符a…b 以a开头,以b结尾,中间包括2个任意字符的长度为4的字符串原创 2022-02-26 22:05:40 · 2453 阅读 · 0 评论 -
Java-分层设计
Java-分层设计表 与 domainBasicDAO 与 XxxDAOService 与 XxxDAOAPPview 与 Service多表查询创建domain创建DAO在Service中调用DAO小问题属性重名分表操作分而治之,各司其职表 与 domain表字段domain属性domain属性与表的字段要一一对应提供相应的无参构造和getter和setter方法(方法名一定要和表字段对应,比如表字段为id,那么方法为getId 和 setId)DBUtils是通过反射将数据库的数据原创 2022-02-25 11:04:13 · 744 阅读 · 0 评论 -
JDBC数据库连接池
JDBC数据库连接池数据库连接池传统获取Connection问题数据库连接池C3P0连接池第一种连接方式准备工作1.创建数据源对象2.给数据源设置相关的参数3.设置初始连接数和最大连接数4.获得ConnectionC3P0连接池第二种连接方式(推荐)Druid(德鲁伊)连接池使用DruidDruid工具类APJDBCUtilsAPJDBCUtils 运行逻辑APJDBCUtils 使用表和JavaBean之间的映射关系Basic-DAODAO测试 连接池的作用在缓冲池中放入一定数量的连接,当有程序请原创 2022-02-23 21:13:40 · 738 阅读 · 0 评论 -
Java-JDBC
Java-JDBCJDBC带来的好处JDBC程序编写步骤前置工作1.注册驱动2.获取连接3. 执行sql语句4.释放资源连接数据库的五种方式1 静态连接2.通过反射动态连接数据库3.DriverManager4.使用Class.forName 自动完成注册驱动5. 在方式4的基础上,使用配置文件,使代码更灵活ResultSetsql注入Statement(预处理)preparedStatement小结JDBCUtils编写JDBCUtils使用JDBCUtilsJDBC控制事务批处理数据库连接池传统获取Co原创 2022-02-23 19:07:15 · 622 阅读 · 0 评论 -
Java反射
Java反射类对象显示加载类获取类对象的三种方式反射常用方法使用反射获取类的名字、包名、父类、接口获取类的构造方法并使用获取类的方法使用反射实现一个可以调用任何对象方法的通用方法使用反射获取属性设计模式工厂设计模式单例模式饿汉式懒汉式静态内部类写法枚举类型注解创建注解类对象显示加载类右击-- Run As – Run Configurations获取类对象的三种方式反射常用方法使用反射获取类的名字、包名、父类、接口获取类的构造方法并使用获取类的方法获取类的所有方法原创 2022-02-15 11:41:04 · 576 阅读 · 0 评论 -
Java文件的操作
Java文件的操作文件的操作分隔符创建文件删除文件获取文件信息获取文件绝对路径获取文件路径获取文件名称获取文件父目录获取文件长度获取文件创建时间判断是否可写是否是文件是否隐藏文件夹的操作创建文件夹删除文件夹获取文件夹信息判断遍历文件夹filefilter接口递归遍历和递归删除总结文件的操作分隔符创建文件删除文件直接删除使用Jvm退出时删除获取文件信息获取文件绝对路径获取文件路径获取文件名称获取文件父目录获取文件长度获取文件创建时间判断是否可写原创 2022-02-07 12:01:54 · 499 阅读 · 0 评论 -
Java泛型总结
Java泛型总结Java泛型定义泛型的语法泛型使用细节自定义泛型自定义泛型接口自定义泛型方法泛型的继承与通配符JUnit练习Java泛型定义E的部分全部替换成我们指定的类型泛型的语法泛型使用细节自定义泛型自定义泛型接口自定义泛型方法1.泛型方法,可以定义在普通类中,也可以定义在泛型类中2.当泛型方法被调用时,类型会确定泛型的继承与通配符JUnit练习package com.study.generic;import or原创 2022-01-28 21:07:43 · 805 阅读 · 0 评论 -
Java集合总结
Java集合总结指令List实现类1.ArrayList2. Vector3. LinkListList遍历方式Set实现类1. HashSetHashSet存储过程LinkedHashSet2. TreeSetMap实现类1. HashMap2. HashTable3. TreeMapColletions工具类总结指令Collections命令解释add添加单个元素remove删除指定元素contains查找元素是否存在size获取元素个数isEm原创 2022-01-27 12:19:54 · 605 阅读 · 0 评论 -
Java枚举与注解
Java枚举与注解枚举什么是枚举枚举的实现方式1.自定义类实现枚举2.使用enum关键字实现枚举emun关键字实现枚举-注意事项枚举成员方法小测试enum使用细节注解什么是注解注解分类@overrideDeprecatedSuppressWarnings元注解枚举什么是枚举枚举的实现方式1.自定义类实现枚举2.使用enum关键字实现枚举emun关键字实现枚举-注意事项对第三点的解释枚举成员方法valuesvalueOfcompareTo小测试原创 2022-01-22 18:38:37 · 708 阅读 · 0 评论 -
idea使用
idea使用创建项目创建类修改字体字符编码快捷键更改快捷键idea模板创建项目创建类右键src回车即可修改字体字符编码快捷键自己习惯用的快捷键快捷键作用ctrl + d<需修改>删除当前行ctrl + alt + ↓ <需修改>复制当前行补全代码alt + /添加注释/取消注释ctrl + /导入该行需要的类alt + enterctrl + alt + L快速格式化代码ctrl原创 2022-01-17 23:05:39 · 384 阅读 · 0 评论 -
Java网络编程
Java网络编程什么是网络什么是计算机网络OSI参考模型TCP/IP模型TCP/UDPIP协议IP地址划分Port端口号InterAddress类创建本机IP地址对象创建局域网IP地址对象创建外网IP地址对象基于TCP的网路编程TCP编程实现客户端发送数据给服务器端TCP编程实现客户端上传文件给服务器TCP编程实现多个客户端发送数据给服务器使用Socket实现注册登录网络编程总结什么是网络什么是计算机网络OSI参考模型TCP/IP模型TCP/UDPIP协议IP地址划分Por原创 2022-01-13 13:33:14 · 257 阅读 · 0 评论 -
Java I/O框架
Java I/O框架什么是流流的分类字节流FileInputStreamFileOutputStream案例--文件流复制字节缓冲流BufferedInputStreamBufferedOutPutStream对象流序列化反序列化序列化和反序列化注意事项常见字符编码字符流抽象类FilereaderFileWriter案例--实现文件复制字符缓冲流BufferReaderBufferWriter打印流转换流InputStreamReaderOutputStreamWriterFile类文件的操作分隔符创建文件原创 2022-01-11 17:40:41 · 601 阅读 · 0 评论 -
Java高级多线程
Java高级多线程线程池线程池原理线程API创建线程池1、创建鼓点线程个数的线程池2、创建缓存线程池,由任务多少来决定3、创建单线程线程池4、创建调度线程池Callable接口--创建线程方式Callable接口结合线程池使用future接口线程同步与异步Lock锁--同步重入锁读写锁线程安全集合问题演示使用Collections中的工具方法1、Collections.synchronizedList(现在不常用)2、CopyOnWriteArrayList3、CopyOnWriteArrayList4、Q原创 2022-01-10 17:19:55 · 470 阅读 · 0 评论 -
Java多线程
Java多线程什么是进程什么是线程进程与线程的区别线程的组成线程的特点创建线程1、继承Thread类,重写run方法获取和修改线程名称获取线程ID和线程名称修改线程名称案例实现2、实现Runnable接口使用匿名内部类案例实现线程状态(基本4状态)线程常用的基本方法休眠线程放弃线程加入设置进程优先级守护进程线程状态(等待)线程安全问题同步代码块同步方法同步规则死锁线程状态(堵塞)线程通信多线程通信案例实现小结什么是进程什么是线程进程与线程的区别线程的组成线程的特点创建线程1、继承原创 2022-01-09 21:37:54 · 344 阅读 · 0 评论 -
Java异常
Java异常什么是异常异常的分类常见运行时异常空指针异常数组越界异常类型转换异常格式化异常算术异常异常的产生异常的传递演示异常的产生与传递异常处理关键字try...catch...try...catch...finally多重catchtry...finally...总结异常处理声明异常抛出异常自定义异常方法覆盖检查异常运行异常总结什么是异常异常的分类常见运行时异常RuntimeException以及RuntimeException的子类属于运行时异常Exception以及Exception原创 2022-01-07 16:46:08 · 410 阅读 · 0 评论 -
Java集合
Java集合什么是集合Collection体系集合Collection父接口添加集合元素删除集合元素遍历集合判断集合List子接口新增集合元素删除集合元素遍历集合判断集合获取位置截取集合List实现类ArrayList新增集合元素删除集合元素遍历集合判断集合查找位置Vector新增集合元素遍历集合其他方法LinkList新增集合元素删除集合元素遍历集合元素判断集合获取位置泛型泛型类泛型接口泛型方法泛型集合set子接口新增集合元素删除集合元素遍历集合判断集合set实现类hashSet新增集合个数删除集合个数遍原创 2022-01-07 12:07:10 · 378 阅读 · 0 评论 -
Java内部类
Java内部类与常用类内部类内部类的分类内部类的概念成员内部类静态内部类局部内部类匿名内部类常用类Object类getclass类hashcode类型toString类equals方法finalize类包装类包装类的含义包装类对应装箱与拆箱Integer缓冲区String类String常用方法可变字符串BigDecimal类Date类Calendar类SimpleDateFormat类System类总结内部类内部类的分类内部类的概念成员内部类使用内部类,必须先创建外部类当然也可以原创 2022-01-05 13:43:18 · 987 阅读 · 0 评论 -
Java接口
Java接口创建接口接口和抽象的区别接口表示能力接口规范接口的多态常见关系常量接口与标记接口接口表示标准案例接口回调接口的好处总结创建接口接口的使用接口和抽象的区别接口表示能力创建接口使用接口多个接口的实现在添加一个接口接口规范接口规范接口引用接口的多态父类接口1接口2子类常见关系接口与接口之间的继承常量接口与标记接口常量接口标记接口接口表示标准案例创建接口创建实现类原创 2022-01-04 10:09:46 · 267 阅读 · 0 评论 -
Java三个修饰符
Java三个修饰符abstract抽象类的作用总结static静态属性静态方法静态代码块类加载总结final什么是finalfinal变量实例变量静态常量对象常量总结abstractabstract – 不能成为创建的对象抽象类的作用1.不该被创建的对象Animal是个抽象的概念,现实中没有Animal这个对象,因此它不能被创建2.不该被创建的方法当父类Animal中的方法无法满足我的子类的需求时,需要加上abstract1、抽象方法必须包含在抽象类中,否则报错2、抽象类可以原创 2022-01-03 19:34:55 · 333 阅读 · 0 评论 -
Java面向对象三大特性
Java面向对象三大特性封装什么是封装set和get方法的快速生成快捷键封装总结综合案例实现继承父类的选择与抽取父类抽取案例不可继承的部分访问修饰符方法的覆盖super的使用方法1子类对象的创建过程super的使用方法2this与super的区别多态多态的概念多态的方法覆盖多态的应用向上转型 与 向下转型类型转换异常与instanceof关键字多态总结三大特性:封装、继承、多态封装什么是封装设为私有属性报错了公共访问方法可以添加两个方法,来访问私有对象并且,可以在方法做一些限制,原创 2022-01-02 22:32:57 · 416 阅读 · 0 评论 -
Java基本语法
Java基本语法选择结构基本if结构if-else结构多重if选择结构嵌套if选择结构分支结构局部变量选择结构与分支结构的总结循环结构while循环do-whilefor循环具体应用流程控制语句嵌套循环循环结构总结方法方法的定义方法的调用方法的参数多个参数返回值return的两种用法方法总结递归方法总结数组动态获取数组长度数组的默认值数组创建语法数组排序数组倒置数组总结选择结构基本if结构if-else结构多重if选择结构嵌套if选择结构分支结构局部变量原创 2021-12-30 22:35:13 · 136 阅读 · 0 评论 -
Java 类与对象
Java面向对象的操作定义类创建对象与使用对象类与对象的关系实例变量实例变量与局部变量的区别实例方法方法重载方法重载调错构造构造方法重载this关键字this的第一种使用方法this的第二种使用方法总结定义类创建对象与使用对象也可以在不同类中使用类与对象的关系实例变量实例变量与局部变量的区别本类有效实例方法课堂案例1课堂案例2方法重载根据传入的参数不同,所实现的功能也不同其实也可以发现System.out.println也是原创 2022-01-01 10:23:26 · 503 阅读 · 0 评论 -
Java基本操作
Java基本操作命名规范变量数据类型整型浮点数布尔型字符型字符转义字符字符串类型转换自动类型转换强制类型转换运算符算术运算符赋值运算符关系运算符逻辑运算符三目运算符自动类型升级与string拼接的类型提升控制台输入总结命名规范变量数据类型整型浮点数布尔型字符型字符转义字符字符串类型转换自动类型转换强制类型转换运算符算术运算符赋值运算符关系运算符逻辑运算符三目运算符自动类型升级与str原创 2021-12-29 22:51:59 · 100 阅读 · 0 评论 -
Eclipse使用
Eclipse使用切换为java模式调整字体大小修改编码修改代码提示创建项目创建项目创建包创建类运行Eclipse常用快捷键切换为java模式第1次打开选择工作空间切换为java模式Windows–Perspective–Open Perspective–Java调整字体大小Windows–Perferences搜索font–Appearance–Colors and Fonts–选择Basic找到Text font选择合适的字体大小点击Apply and Close修原创 2021-12-31 12:34:10 · 209 阅读 · 0 评论