引入jspapi、servletapijstl注册DispatcherServlet<servlet<servletnamespringmvc</servletname<!核心控制器,拦截所有请求进行分发<servletclassorg.springframework.web.servlet.DispatcherServlet</servletclass<initparam<paramnameco
依赖<dependency<groupIdorg.springframework</groupId<artifactIdspringwebmvc</artifactId<version5.3.9</version</dependency<dependency<groupIdjavax.servlet</groupId<artifactIdjavax.servletapi</artifactId<v
解构赋值不能对undefined和null解构在函数解构的参数中如果不传参数,默认是undefined数组解构赋值:用表示,中间加变量名,表示数组中每一个元素例如:a,b,c=1,2,3a,,c=1,2,3c表示3,,c=1,2,3c表示3数组也可以看成一个键为下标的对象对象解构赋值:用{}表示,中间用对象的键:变量名来表示,如果变量名和键一样,可以省略:变量名arguments关键字:表示当前函
smile
IO文件流IO流的含义:Java的IO流是实现输入和输出的基础,可以方便的实现数据的输入和输出操作。在java中把不同的输入/输出源(键盘,文件,网络连接等)抽象表述为“流”(stream)。流的分类按照流的文件类型:字节流(InputStream、OutputStream)和字符流(Reader,Writer)按照流的流向:输入流和输出流按照功能:节点流和过滤流所有文件数据(文本、图片、视频等)
ringBuffer的特点:可变字符串、高效拼接字符串;支持链式操作;线程不安全;任何对它指向的字符串的操作都不会产生新的对象。每个StringBuffer对象都有一定的缓冲区容量,当字符串大小没有超过容量时,不会分配新的容量,当字符串大小超过容量时,会自动增加容量。String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量优先的内存空间。
在数学中,集合就是在一个List,Set,Map都是接口,前两个继承至Collection接口,Map为独立接口CollectionList(列表)有序且可重复ArrayList优点:底层数据结构是数组,可以根据下标直接的找到对应的元素,所以查询快。缺点:但是因为数组增删需要移动元素,所以增删的效率低。线程不安全,效率高VectorVector的底层是数组,优点和ArrayList一样,但是线程安
密封类:sealed被继承类permits可以被继承的类publicsealedclassAnimalpermitsDog,Cat{//定义一个密封类Animal,只允许Dog,Cat继承允许某个类的可以被特定的类继承,子类必须是final或密封类(一般都用final),且必须定义需要继承的子类abstract修饰(抽象)抽象类1.抽象类用abstract修饰,此类不能实例化2.抽象类不能创建对象
继承是类与类之间的关系,是一个很简单很直观的概念,与现实世界中的继承(例如儿子继承父亲财产)类似。继承可以理解为一个类从另一个类获取方法和属性的过程。如果类B继承于类A,那么B就拥有A的方法和属性。继承使用extends关键字要求1.定义图形类(周长和面积),属性全部私有化2.定义圆类(提供半径,周长和面积)3.定义长方形,继承图形,并提供长和宽,计算周长和面积4.定义正方形,继承长方形,并计算周
>以bank取钱为例 #### 成员内部类/静态内部类 ``` package day5; public class Bank { public void getMoney(int money) { ATM atm = new ATM(); int m = atm.getMoney(money); System.out.println("
#### Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。 ##### Java 支持 4 种不同的访问权限。 * default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使* 用对象:类、接口、变量、方法。 * private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类) * public : 对所有类可见。使用对象:类、接口、
>面向对象离不开面向过程 ### 实现 public class mianxiangduixiang { //定义人的属性(属性,人的象征) int age;//年龄 String name;//姓名 int height;//身高.单位:cm double weighe; //体重 单位:kg String sex ;//性别,男,女,保密
## 两种初始化形式 格式1: 动态初始化 数据类型 数组名 [ ][ ] = new 数据类型[m][n] 数据类型 [ ][ ] 数组名 = new 数据类型[m][n] 数据类型 [ ] 数组名 [ ] = new 数据类型[m][n] 举例:int [ ][ ] arr=new int [5][3]; 也可以理解为“5行3例” 格式2: 静态初始化 数据类型 [ ][ ]
``` class T27{ public static void main(String [] args) { int [] array = {12,34,53,22,13}; //使用jdk自带的排序,对数据进行升序排列 //java.lang包是sun公司默认导入的包,该包下的类,在使用的时候不需要import Arra
### 冒泡顺序排列 ``` class T25{ public static void main(String [] args){ int [] array = {13,7,8,2,11,4}; //外层循环控制次数 for (int i = 0; i< array.length-1;i++){ //内层循环两两比较
> day2 ## 数组 数组是一个容器,拥有不同的类型 ### 数组的特点: * 数组一旦定义,里面装的数据类型是一致 的。 * 数组一旦定义,长度不可改变。 * 数组存储的数据在内存中是连续的 * 在数组中快速获取数据的地址方法 0X11+(n-1)*4,切记要注意的是不同的元素所在位置表达也不同。 * 0X11+index*4(index是索引,代表数组中每一个元素的
>day 1 # 字符串的拼接 #### 两个字符串字面量相加,编译器会直接将其合并,从串池中获取字符串(包含变量)相加,每次拼接编译器会构建StringBuilder进行频繁拼接字符不推荐使用+号,会产生很多对象,性能低,建议用StringBuilder。 ``` class T02 { public static void main(String[] args) { S
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号