初始JAVA 学习三问: What Why How: 是什么 为什么 怎么做 为啥学Java 编程语言排行榜: Java 是什么: Java发展史: 诞生于1995 创始人 詹姆斯.高斯林 SUN...本人主要是Web开发… Java特性:(开源 免费 纯面向对象 跨平台) 简单性 Java 不在支持多继承 C++支持 Java没有指针,相对比较简单,Java 底层语言是C++ 实现的 面向对象...JVM Java虚拟机 注意: 不同操作系统,安装不同的 JVM,Java代码运行在JVM上因此实现了Java代码一次编写到处运行的特性...., 计算机就可以 运行/编写 Java 代码了 //1.创建一个 记事本 后缀名 .txt //2.修改记事本 后缀名 .java java源文件后缀名是 .java //3.在内部编写 Java...//4.放在一个方便访问的盘中; //5.选中盘,在cmd(计算机dos窗口)中使用: javac .java文件 来编译Java文件 成 .class文件 //6.继续使用: Java .Java
4) 插入的方法用save/insert 做前缀。 5) 删除的方法用remove/delete 做前缀。 6) 修改的方法用update 做前缀。...Java 开发手册12/443) 等于 size,在高并发情况下,数组创建完成之后,size 正在变大的情况下,负面影响与上相同。...导致下一次循环不相等继续向下执行,导致检查数组不通过,抛出java.util.ConcurrentModificationException 【强制】在 JDK7版本及以上,Comparator实现类要满足如下三个条件...说明:Random实例包括java.util.Random 的实例或者 Math.random()的方式。...忽略参数校验可能导致: ⚫ page size 过大导致内存溢出 ⚫ 恶意order by导致数据库慢查询 ⚫ 任意重定向 ⚫ SQL 注入 ⚫ 反序列化注入 ⚫ 正则输入源串拒绝服务 ReDoS 说明:Java
image.png image.png image.png image.png image.png image.png image.png image.png ...
Java语法手册 二 程序流程控制:IF Java, 几乎任何的编程语言执行流程都遵循,从上往下, 从左往右......分支结构: JAVA中常见选择结构: JAVA中常见选择结构: if(){}: //if() 判断括号true/false true:执行大括号 false:跳过; if(){} - else...//循环体; } break作用: //终止某个 循环 循环中 break后的语句不在执行; continue作用: //结束 此次循环 开始下一次循环; return作用: //跳出方法...return确实可以结束循环,但它是结束整个方法,实际开发不建议使用! //写循环时候要注意循环条件,别把条件丢了出现死循环...影响程序效率!...数组排序: 导包: java.util.Arrays Arrays.sort(数组名); //( )括号放指定数组进行排序; 低—高(升序); Arrays: java.util中一个工具类 Arrays
Java语法手册 一 开篇 Java 程序注释 // 单行注释 /* 多行注释 */ /** DOC注释:文档注释(Java特有的文档注释,可以通过JDK Javadoc命令生成一个HTML网页给用户观看...*/ 2.mian() 方法程序入口 public static void main(String [] args){ //main 程序入口开始地方; 它有固定的书写格式; } 3.打印语句:...源文件以“java”为扩展名,源文件的基本组成部分是类(class) Java应用程序的执行入口是main()方法。...Java语言严格区分大小写。 Java方法由一条条语句构成,每个语句以“;”结束。 大括号都是成对出现的,缺一不可。 一个源文件中最多只能有一个public类。...扩:可以连续赋值 int i = 1,q = 2; //同时赋值多个~ int i,q; i=q=2; //同时符多个对象值; 注意: 1.方法中使用了未赋值的变量运行过程中会报错
2) 获取多个对象的方法用 list 做前缀,复数形式结尾如:listObjects。 3) 获取统计值的方法用 count 做前缀。 4) 插入的方法用save/insert 做前缀。...Java 开发手册 12/44 3) 等于 size,在高并发情况下,数组创建完成之后,size 正在变大的情况下,负面影响与上相同。...导致下一次循环不相等继续向下执行,导致检查数组不通过,抛出java.util.ConcurrentModificationException 【强制】在 JDK7版本及以上,Comparator实现类要满足如下三个条件...说明:Random实例包括java.util.Random 的实例或者 Math.random()的方式。...忽略参数校验可能导致: ⚫ page size 过大导致内存溢出 ⚫ 恶意order by导致数据库慢查询 ⚫ 任意重定向 ⚫ SQL 注入 ⚫ 反序列化注入 ⚫ 正则输入源串拒绝服务 ReDoS 说明:Java
前言 参考:阿里巴巴Java开发手册V1.3.0 总结比较重要的,对面试有用的开发规约 一、编程规约 (一)命名风格 【强制】POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误...【强制】构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,请放在 init 方法中。 【强制】POJO 类必须写 toString 方法。...【强制】ArrayList的subList结果不可强转成ArrayList,否则会抛出ClassCastException 异常,即 java.util.RandomAccessSubList cannot...be cast to java.util.ArrayList....说明:Random 实例包括 java.util.Random 的实例或者 Math.random()的方式。
产品手册应包含的内容 一般产品手册可以考虑包括以下内容: 产品描述:包括但不限于产品定义,典型使用场景,主要功能特性,产品亮点。 产品架构:说明产品与周边生态环境的关系,便于用户理解产品定位。...公司产品手册的通用制作流程 1. 现有资料的收集、阅读、梳理、分类整理,确定有哪些产品及服务; 2. 确定产品手册的关键要素、内容框架、呈现逻辑; 3....制作产品手册的工具 当然拥有好的工具将会让你事半功倍,本文向大家介绍如何在网上制作精美好用的产品手册和帮助中心。...Baklib在线制作产品手册,为用户提供了智能化的编辑和样式工具、可让您轻松地设置文字和段落的格式、从而制作生动的产品手册。每一次编辑都实时保存在云端、使你的客户更清晰的了解到你的企业与产品。...制作流程 仅仅需要4步就可以制作一个漂亮的产品手册界面!
什么是JDBC Java数据库连接,简称JDBC(java Database Connectivity),是一种用于执行SQL语句的java API,它由一组java编写的类和接口组成。...自动封装的原理:通过反射机制创建目标对象,必须调用无参构造,实体类必须有一个无参构造,属性必须有stter方法 注意 提供SQL占位符:用?代替参数。...程序;一般会将数据库的连接信息提取出来放在配置文件里面,java程序只需要读取配置文件就、就可以了。...关于封装:当一个代码多次重复执行,那么我们可以将它封装成一个类,一个方法多次被调用,那么将他放到静态代码块中。...java 中对数据库的操作时,一般是建立一个模型类,将数据库的表映射到模型类,然后以面向对象的操作方法来处理。
Java大联盟 致力于最高效的Java学习 什么是反射?...我们知道 Java 是面向对象的编程语言,世间万物都可以抽象成对象,反射也不例外,即通过反射机制获取的类的结构也可以抽象成一个对象,如何来创建这个对象呢?...Java 提供了三种方式来实例化 Class: 1、调用 Class 的静态方法 forName(String className) 创建,将目标类的全限定类名(全限定类名就是包含所在包信息的类名全称,...如java.lang.String)作为参数传入,即可获取对应的 Class 对象,forName(StringclassName) 方法的定义如下图所示。...java.lang.reflect 包中提供了 InvocationHandler 接口,通过该接口可以在程序运行期间动态生成代理类。
【强制】Java 类库中定义的可以通过预检查方式规避的 RuntimeException 异常不应该通过 catch 的方式来处理,比如:NullPointerException,IndexOutOfBoundsException...说明:通过反射机制来调用方法,如果找不到方法,抛出 oSuchMethodException。什么情况会抛出 NoSuchMethodError 呢?...二方包在类冲突时,仲裁机制可能导致引入非预期的版本使类的方法签名不匹配,或者在字节码修改框架(比如:ASM)动态创建或修改类时,修改了相应的方法签名。...此外,如果 debug(getName()) 这种参数内有getName() 方法调用,无谓浪费方法调用的开销。...参考 2022 Java开发手册(黄山版).pdf
关于 hashCode 和 equals 的处理 判断所有集合内部的元素是否为空,使用 isEmpty()方法 在使用 java.util.stream.Collectors 类的 toMap()方法转为...Map 集合时,一定要使用含有参数类型为 BinaryOperator 【强制】在使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,一定要注意当...【强制】在使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,一定要使用含有参数类型为 BinaryOperator,参数名为 mergeFunction...【强制】在使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,一定要注意当 value 为 null 时会抛 NPE 异常。...这是因为:在 java.util.HashMap 的 merge 方法里会进行如下的判断: if (value == null || remappingFunction == null) throw
Ajax技术的核心:XMLHttpRequest 常用方法: open() 创建一个新的HTTP请求。 send() 将请求发送到服务器。...jQuery 对AJAX的封装 JavaScript传统方式调用Ajax有很多不足,步骤繁琐,方法,属性多不便记忆,存在浏览器兼容问题等。 jQuery对Ajax进行了封装,可以解决上述问题。...java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath...; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet...; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet
能用无锁数据结构,就不要用锁; 能锁区块,就不要锁整个方法体; 能用对象锁,就不要用类锁。 说明:尽可能使加锁的代码块工作量尽可能的小,避免在锁代码块中调用 RPC 方法。 8....说明一: 如果在 lock 方法与 try 代码块之间的方法调用抛出异常,那么无法解锁,造成其它线程无法成功获取锁。...说明二: 如果 lock 方法在 try 代码块之内,可能由于其它方法抛出异常,导致在 finally 代码块中,unlock 对未加锁的对象解锁,它会调用 AQS 的 tryRelease 方法(取决于具体实现类...await 方法,直到超时才返回结果。...说明:Random 实例包括 java.util.Random 的实例或者 Math.random()的方式。
说明:忽略参数校验可能导致: page size过大导致内存溢出 恶意order by导致数据库慢查询 任意重定向 SQL注入 反序列化注入 正则输入源串拒绝服务ReDoS 说明:Java
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置: 1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:...变量,变量值为:C:\Program Files\Java\jdk1.6.0_14(根据自己的安装路径填写) 2)新建classpath变量,变量值为:....;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 3)在path变量(已存在不用新建)添加变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin...补充环境变量的解析: JAVA_HOME:jdk的安装路径 classpath:java加载类路径,只有类在classpath中java命令才能识别,在路径前加了个"."表示当前路径。...path:系统在任何路径下都可以识别java,javac命令。
Java作为一门名副其实的工业级语言,语法友好,学习简单,大规模的应用给代码质量的管控带来了困难,特别是团队开发中,开发过程中的规范会直接影响最终项目的稳定性。...下面对《阿里巴巴Java开发手册-v1.1.0版》记录一些对我比较有启发的条款,提纲挈领,快速学习,方便还没有阅读的同学快速了解。...2、相同参数类型,相同业务含义,才可以使用 Java 的可变参数,避免使用 Object 可变参数必须放置在参数列表的最后,尽量不用可变参数编程。...Random 实例包括 java、util、Random 的实例或者 Math、random()实例。...用户请求传入的任何参数必须做有效性验证 忽略参数校验可能导致: page size过大导致内存溢出 恶意order by导致数据库慢查询 任意重定向 SQL注入 反序列化注入 正则输入源串拒绝服务ReDoS——Java
【强制】获取单例对象需要保证线程安全,其中的方法也要保证线程安全。说明:资源驱动类、工具类、单例工厂类都需要注意。 【强制】创建线程或线程池时请指定有意义的线程名称,方便出错时回溯。...能用无锁数据结构,就不要用锁;能锁区块,就不要锁整个方法体;能用对象锁,就不要用类锁。 说明:尽可能使加锁的代码块工作量尽可能的小,避免在锁代码块中调用 RPC 方法。 7....【推荐】使用CountDownLatch进行异步转同步操作,每个线程退出前必须调用countDown 方法,线程执行代码注意catch异常,确保countDown方法被执行到,避免主线程无法执行至await...方法,直到超时才返回结果。...说明:Random实例包括java.util.Random 的实例或者 Math.random()的方式。
【强制】不要使用count(列名)或count(常量)来替代count(),count()是SQL92定义的标准统计行数的语法,跟数据库无关,跟NULL和非NU...
3) 方法调用的点符号与下文一起换行。 4) 方法调用时,多个参数,需要换行时,在逗号后进行。 5) 在括号前不要换行,见反例。...正例: StringBuffer sb = new StringBuffer(); // 超过120个字符的情况下,换行缩进4个空格,点号和方法名称一起换行 sb.append("zi").append...); // 超过120个字符的情况下,不要在括号前换行 sb.append("zi").append("xin")...append ("huang"); // 参数很多的方法调用可能超过..., argsX); 【强制】方法参数在定义和传入时,多个参数逗号后边必须加空格。 正例:下例中实参的”a”,后边必须要有一个空格。...【推荐】方法体内的执行语句组、变量的定义语句组、不同的业务逻辑之间或者不同的语义之间插入一个空行。相同业务逻辑和语义之间不需要插入空行。 说明:没有必要插入多个空行进行隔开。
领取专属 10元无门槛券
手把手带您无忧上云