![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java基础笔记
文章平均质量分 80
java基础笔记一步到位
一个风轻云淡
先搞钱,去养老,当保安,过日子(本人菜鸡一个,又菜又爱敲,希望能和您共同进步,当然如果您有问题,我会的,会尽量及时解答)
展开
-
一文打通File类
java.io.File类:文件和文件目录路径的抽象表示形式,与平台无关File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。File对象可以作为参数传递给流的构造器。原创 2023-05-25 07:56:19 · 316 阅读 · 0 评论 -
jdk动态代理和cglb动态代理
动态代理和静态代理都是代理模式的实现方式,其主要区别在于代理类生成的时机和方式。静态代理是在编译时就确定了代理类的代码,在程序运行前就已经存在了代理类的class文件。代理类与委托类的关系在编译时就已经确定,因此被称为静态代理。在静态代理中,代理类需要实现与委托类相同的接口或者继承委托类的父类,以便能够对委托类进行代理操作。动态代理是在程序运行时生成代理类的代码,代理类通过反射机制动态生成。动态代理不需要像静态代理一样实现与委托类相同的接口或继承委托类的父类,它可以实现任意接口。原创 2023-06-14 07:51:25 · 820 阅读 · 1 评论 -
java网络编程从0到1快速上手
java是 Internet 上的语言,它从语言级上提供了对网络应用程序的支持,程序员能够很容易开发常见的网络应用程序。Java提供的网络类库,可以实现无痛的网络连接,联网的底层细节被隐藏在 Java 的本机安装系统里,由 JVM 进行控制。并且 Java 实现了一个跨平台的网络库,程序员面对的是一个统一的网络编程环境。通信双方地址IP端口号一定的规则(即:网络通信协议。有两套参考模型)OSI参考模型:模型过于理想化,未能在因特网上进行广泛推广。原创 2023-05-24 07:47:31 · 744 阅读 · 0 评论 -
快速上手打通java中的IO流
流是一种抽象概念,它代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得数据的操作称为提取操作,而向流中添加数据的操作称为插入操作。用来进行输入输出操作的流就称为IO流。换句话说,IO流就是以流的方式进行输入输出。原创 2023-05-23 07:51:52 · 628 阅读 · 0 评论 -
java枚举类解读
1. 私有化类的构造器,保证不能在类的外部创建其对象2. 在类的内部创建枚举类的实例。声明为:public static final3. 对象如果有实例变量,应该声明为private final,并在构造器中初始化//季节的名称//季节的描述public static final Season SPRING = new Season("春天", "春暖花开");public static final Season SUMMER = new Season("夏天", "夏日炎炎");原创 2023-05-21 07:47:55 · 491 阅读 · 0 评论 -
一文打通计算机字符编码
首先来看一下常用的编码有哪些,截图自 Notepad++。其中 ANSI 在中国大陆即为 GBK(以前是 GB2312),最常用的是 GBK 和 UTF8 无 BOM 编码格式。后面三个都是有 BOM 头的文本格 式,UCS-2 即为人们常说的 Unicode 编码,又分为大端、小端。1、大端模式(Big endian):将高序字节存储在起始地址(按照从低地址到高地址的顺序存放数据的高位字节到低位字节)原创 2023-02-27 08:00:06 · 463 阅读 · 0 评论 -
java 11 新特效解读(2)
HTTP/1.1和HTTP/2的主要区别是如何在客户端和服务器之间构建和传输数据。HTTP/1.1依赖于请求/响应周期。HTTP/2允许服务器“push”数据:它可以发送比客户端请求更多的数据。这使得它可以优先处理并发送对于首先加载网页至关重要的数据。这是Java 9开始引入的一个处理HTTP请求的的HTTP Client API,该API支持同步和异步,而在Java 11中已经为正式可用状态,你可以在java.net包中找到这个API。它将替代仅适用于blocking模式的HttpURLCo原创 2023-08-11 12:58:31 · 228 阅读 · 0 评论 -
Java 11 新特性解读(1)
北京时间2018年9月26日,Oracle官方宣布Java 11正式发布。这是Java大版本周期变化后的第一个长期支持版本,非常值得关注。从官网即可下载,最新发布的Java11将带来ZGC、Http Client等重要特性,一共包含17个JEP(JDK EnhancementProposals,JDK增强提案)。其实,总共更新不止17个,只是我们更关注如下的17个JEP更新。JDK 11将是一个企业不可忽视的版本。原创 2023-08-10 12:56:35 · 175 阅读 · 0 评论 -
Java 10 新特性解读
2018年3月21日,Oracle官方宣布Java10正式发布。 需要注意的是 Java 9 和 Java 10 都不是 LTS (Long-Term-Support) 版本。和过去的 Java 大版本升级不同,这两个只有半年左右的开发和维护期。而未 来的 Java 11,也就是 18.9 LTS,才是 Java 8 之后第一个 LTS 版本。原创 2023-06-21 07:40:46 · 369 阅读 · 0 评论 -
java 9新特效解读(4)
Java 的 Steam API 是java标准库最好的改进之一,让开发者能够快速运算, 从而能够有效的利用数据并行计算。Java 8 提供的 Steam 能够利用多核架构 实现声明式的数据处理。 在 Java 9 中,Stream API 变得更好,Stream 接口中添加了 4 个新的方法:takeWhile, dropWhile, ofNullable,还有个 iterate 方法的新重载方法,可以让你提供一个 Predicate (判断条件)来指定什么时候结束迭代。 除了对 Stre原创 2023-08-13 10:23:55 · 208 阅读 · 0 评论 -
java 9的新特性解读(3)
String 类的当前实现将字符存储在 chararray 中,每个字符使用两个字节(十六位)。从许多不同的应用程序收集的数据表明字符串是堆使用的主要组成部分,此外,大多数 String 对象仅包含 Latin-1字符。此类字符只需要一个字节的存储空间,因此String存储结构变更 Motivatio 结论:String 再也不用 char[] 来存储啦,改成了 byte[] 加上编码标记,节约了一些空间。那StringBuffer 和 St原创 2023-08-12 11:14:07 · 223 阅读 · 0 评论 -
java 9的新特性解读(2)
像Python 和 Scala 之类的语言早就有交互式编程环境 REPL (read - evaluate - print - loop)了,以交互式的方式对语句和表达式进行求值。开发者只需要输入一些代码, 就可以在编译前获得对程序的反馈。而之前的Java版本要想执行代码,必须创建文 件、声明类、提供测试方法方可实现。即写即得、快速运行 默认已经导入如下的所有包:(包含java.lang包) : 语法改进:钻石操作符使用升级 我们将能够与匿名实现类共同使用钻石操作符(diamond ope原创 2023-02-26 07:45:18 · 389 阅读 · 0 评论 -
java 9 的新特性解读(1)
经过4次跳票,历经曲折的Java 9 终于终于在2017年9月21日发布。 从Java 9 这个版本开始,Java 的计划发布周期是 6 个月,下一个 Java 的主版本将于 2018 年 3 月发布,命名为 Java 18.3,紧接着再过六个月将发布 Java18.9。 这意味着Java的更新从传统的以特性驱动的发布周期,转变为以时间驱动的 (6 个月为周期)发布模式,并逐步的将 Oracle JDK 原商业特性进行开源。原创 2023-02-24 10:01:34 · 872 阅读 · 0 评论 -
java跨域问题
浏览器安全的基石是,什么是同源策略呢?如果两个 URL 的(如果有指定的话) 和都相同的话,则这两个 URL 是同源。这个方案也被称为“协议/主机/端口元组”,或者直接是“元组”。(“元组”是指一组项目构成的整体,双重/三重/四重/五重/等的通用形式)。http://原创 2023-02-08 11:33:50 · 723 阅读 · 0 评论 -
java线程池
池中一直保持的线程的数量,即使线程空闲也不会释放。除非设置了 allowCoreThreadTimeOut *池中允许的最大的线程数当线程数大于核心线程数的时候,线程在最大多长时间没有接到新任务就会终止释放, 最终线程池维持在 corePoolSize 大小时间单位阻塞队列,用来存储等待执行的任务,如果当前对线程的需求超过了 corePoolSize大小,就会放在这里等待空闲线程执行。创建线程的工厂,比如指定线程名等。原创 2023-02-03 17:33:53 · 1395 阅读 · 0 评论 -
一文打通java线程
是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码,静态对象。是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。——生命周期进程可进一步细化为线程,是一个程序内部的一条执行路径。 单核CPU,其实是一种假的多线程,因为在一个时间单元内,也只能执行一个线程 的任务。例如:虽然有多车道,但是收费站只有一个工作人员在收费,只有收了费 才能通过,那么CPU就好比收费人员。如果有某个人不想交钱,那么收费人员可以 把他“挂起”(晾着他,等他想通了,准原创 2023-01-24 17:30:41 · 2134 阅读 · 0 评论 -
使用PreparedStatement实现CRUD操作
可以通过调用 Connection 对象的 preparedStatement(String sql) 方法获取 PreparedStatement 对象PreparedStatement 接口是 Statement 的子接口,它表示一条预编译过的 SQL 语句PreparedStatement 对象所代表的 SQL 语句中的参数用问号(?)来表示,调用PreparedStatement 对象的。原创 2022-10-21 12:53:32 · 211 阅读 · 0 评论 -
一文打通:强大的Stream API
Stream到底是什么呢?是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。“集合讲的是数据,Stream讲的是计算!”注意:①Stream 自己不会存储元素。②Stream 不会改变源对象。相反,他们会返回一个持有结果的新Stream。③Stream 操作是延迟执行的。这意味着他们会等到需要结果的时候才执行。原创 2022-10-15 08:59:38 · 289 阅读 · 0 评论 -
方法引用与构造器引用
方法引用与构造器引用。原创 2022-10-15 08:39:38 · 384 阅读 · 0 评论 -
一文打通Lambda 表达式和函数式接口
只包含一个抽象方法的接口,称为函数式接口。 你可以通过 Lambda 表达式来创建该接口的对象。(若 Lambda 表达式 抛出一个受检异常(即:非运行时异常),那么该异常需要在目标接口的抽象方法上进行声明)。 我们可以在一个接口上使用 @FunctionalInterface 注解,这样做可以检 查它是否是一个函数式接口。同时 javadoc 也会包含一条声明,说明这个接口是一个函数式接口。 在java.util.function包下定义了Java 8 的丰富的函数式接口}原创 2022-10-15 08:24:23 · 227 阅读 · 0 评论 -
动态代理入门
动态代理原创 2022-07-12 09:32:55 · 150 阅读 · 0 评论 -
filter 过滤器
Filter 的生命周期包含几个方法1、构造器方法2、init 初始化方法第 1,2 步,在 web 工程启动的时候执行(Filter 已经创建)3、doFilter 过滤方法第 3 步,每次拦截到请求,就会执行4、destroy 销毁第 4 步,停止 web 工程的时候,就会执行(停止 web 工程,也会销毁 Filter 过滤器)FilterConfig 类见名知义,它是 Filter 过滤器的配置文件类。Tomcat 每次创建 Filter 的时候,也会同时创建一...原创 2022-04-27 07:45:07 · 695 阅读 · 0 评论 -
jsp和servlet进行数据上传
public class uploadservlet extends HttpServlet { @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// System.out.println("文件传发来");// ServletInputStream inputStre.原创 2022-04-17 11:10:53 · 517 阅读 · 0 评论 -
java泛型理解
为什么要有泛型(Generic)泛型:标签 举例: 中药店,每个抽屉外面贴着标签 超市购物架上很多瓶子,每个瓶子装的是什么,有标签 泛型的设计背景 集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的 对象,所以在JDK1.5之前只能把元素类型设计为Object,JDK1.5之后使用泛型来 解决。因为这个时候除了元素的类型不确定,其他的部分是确定的,例如关于 这个元素如何保存,如何管理等是确定的,因此此时把元素的类型设计成一个 参数,这个类型参数叫原创 2022-03-28 07:41:44 · 305 阅读 · 0 评论 -
java集合理解(深入浅出)
深入浅出,一口气带你全部理解集合原创 2022-03-27 07:56:23 · 2854 阅读 · 0 评论 -
java类详解(深入浅出 Date Math System BigInteger等 )
深入浅出 Date Math System BigInteger等原创 2022-03-26 14:37:54 · 237 阅读 · 0 评论 -
java字符串详解(深入浅出)
字符串详解,深入浅出,全方面理解原创 2022-03-26 08:39:02 · 2778 阅读 · 0 评论 -
java面对对象(下.3深入浅出理解异常)
深入浅出理解异常原创 2022-03-24 23:32:32 · 398 阅读 · 0 评论 -
java面对对象(下.2抽象类和接口,内部类)
抽象类和接口,内部类原创 2022-03-23 23:37:24 · 592 阅读 · 0 评论 -
java面对对象(下.1)(java关键字理解:static final main)
java关键字理解:static final main等理解,不容错过原创 2022-03-22 23:36:10 · 381 阅读 · 1 评论 -
java面对对象(中.2)(多态性,终极父类,instanceof,包装类等)
深入浅出,全方面理解java多态性,终极父类,instanceof,包装类等,还有一些踩坑点,不容错过原创 2022-03-21 08:43:28 · 7595 阅读 · 4 评论 -
java类和对象(中.1)(继承性详解)
子类和父类的详细解释!继承性的理解!原创 2022-03-20 14:33:49 · 569 阅读 · 0 评论 -
java类和对象(上.2)
java笔记理解构造器和this.package. import的深入浅出理解原创 2022-03-20 07:45:57 · 525 阅读 · 1 评论 -
java的类和对象(上.1)
java对象初步理解,深入浅出,通俗易懂原创 2022-03-19 20:34:42 · 387 阅读 · 1 评论 -
java数组理解
java数组解析!!!好好学习!!原创 2022-03-19 15:00:38 · 537 阅读 · 1 评论 -
java语言基础(关键字,标识符,命名规则)
java语言基础入门原创 2022-03-17 16:01:03 · 1711 阅读 · 0 评论 -
c语言笔记2大一(选择结构程序设计,逻辑)
/关系运算符:比如a>c,如果a为4且b为3则返回真,否则就返回假。关系运算符及其优先级:C语言提供的关系运算符主要为6种,分别是:< (小于) ; <= (小于等于) ; >( 大于) ; >= (大于等于)以上四个优先级相同(高)== 等于;!= 不等于这两个优先级相同(低)在C语言中用整数1表示逻辑值为真,用整数0表示逻辑值为假。比如(a=3)>(b=8);由于逻辑值为假所以返回0。求值过程:(1)计算运算符表达式两边的值;(2)比较这两个值的大小,如果是整形的话就原创 2021-10-24 10:45:39 · 392 阅读 · 0 评论 -
c语言大一基本理解笔记1
笔记///*所谓程序,就是一组计算机能识别和执行的指令,计算机的本质是程序的机器;计算机工作基于二进制,从根本上说,计算机只能识别和接受0和1组成的指令,这种计算机能识别和接受的二进制代码称为机器指令;机器指令的集合就是该计算机的机器语言; / /#include <stdio.h> //这是编译预处理指令int main() //定义主函数 {原创 2021-10-19 21:31:27 · 1529 阅读 · 5 评论