![](https://img-blog.csdnimg.cn/20190222091840123.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
JAVA基础及进阶
文章平均质量分 57
java基础及进阶
chaizepeng
每天进步一点
展开
-
java处理字符串,多个空格替换成一个空格,一个空格处理成空字符串
char[] charArray = aString.toCharArray(); StringBuffer stringBuffer = new StringBuffer(); for(int i = 0 ; i < charArray.length; i++) { if(charArray[i] == ' ') { int flag = 0; for(int j = i+1 ; j < charArray.length; j++) { fl...原创 2021-05-17 17:27:54 · 404 阅读 · 0 评论 -
1、java简介
关于java介绍也没什么好说的,在这里简单介绍一下,说起java,我第一想到的就是它的简单和强大,简单是简单易学,开发速度快;强大是其功能强大,各个领域都可使用,其代码一次编译可以处处运行(需要特定的环境)。Java是一种高级的面向对象的编程语言,他具有以下特性:面向对象、跨平台、安全、健壮、支持多线程等Java有三个版本:J2SE、J2EE、J2ME。J2SE是java的基础版本,主要用...原创 2018-12-12 19:08:14 · 1069 阅读 · 0 评论 -
2、JAVA开发环境的搭建
上次说到java应用之所以做到跨平台,是因为其依赖于java虚拟机,java想要运行需要依赖于特定的运行环境,称为JRE,如果想要开发java应用,则需要用到开发工具包,也就是JDK,所以这里就要说一下这几者的关系。JDK是java开发工具包,它包含JRE、java工具包和开发所依赖的类库;JRE包含JVM和JVM运行所需的类库;java虚拟机的介绍以后再说,比较复杂。因此使用j...原创 2018-12-13 09:29:01 · 153 阅读 · 1 评论 -
3、java中的数据类型和运算符
数据类型数据类型是对数据存储在内存中位置的一种抽象表示,java的数据类型总体上分为两大类:基本数据类型和引用数据类型。1、基本数据类型 基本数据类型是语言本身定义的,数据结构上有说基本数据类型表示的是真实的数字和字符,在java中,基本数据类型的数据都是存储在栈内存中,基本数据类型包含四类八种,介绍如下。 第一类:整型,包含四种数据类型,字节型(by...原创 2018-12-17 17:18:02 · 270 阅读 · 0 评论 -
4、java中的流程控制(程序结构)
说一下java的流程控制(程序结构),其实对于计算机而言,无非就那几类执行流程(程序结构),程序从头到尾依次执行每一行代码,这就是顺序结构;也可能在执行过程中遇到条件判断,造成程序运行产生分支,这就是分支结构(判断结构);也可能有一段代码需要重复执行多次,这便是循环结构,不管是哪种结构都是可以相互嵌套的。接下来详细介绍一下分支和循环。分支结构 java中分支流程的控制通过...原创 2018-12-20 14:53:16 · 1543 阅读 · 1 评论 -
5、java中的数组
1、简介数组是一种具有随机存取特性的数据结构,是内存上一段连续区域的表示,是实现顺序存储的基础,数组只能用于存储同一类型的数据。数组的长度在初始化时定义之后就不可更改,并且在初始化数组时必须指定数组的长度。2、数组的声明和赋值这里用一维数组为例,创建数组有以下两种方式,一是声明时直接赋值,而是先声明后赋值。第一种:Int []array = {1,2,3} ;//声明并给数组赋...原创 2018-12-22 14:23:49 · 344 阅读 · 0 评论 -
6、java中的排序算法
1、简介排序是将元素按着指定关键字的大小递增或递减进行数据的排列,排序可以提高查找的效率2、排序算法的分类排序算法可大致分为四类七种,具体分类如下: 插入排序:直接插入排序、希尔排序 交换排序:冒泡排序、快速排序 选择排序:直接选择排序、堆排序 归并排序3、插入排序算法思想:每次将一个元素按着关键字大小插入到他前面...原创 2018-12-25 17:45:01 · 171 阅读 · 0 评论 -
7、java中的面向对象思想和体现
java是一种面向对象的程序设计语言,在程序中使用对象来描述具体的事物,当多个事物具有共同的特点时,可以将事物的共同特点进行抽象,然后封装成一个包含事物共同特点的集合,在java中叫做封装成一个类,可以将面向对象的主要特点是(抽象)封装、继承和多态。封装 所谓抽象,就是将一些具体的事物之间存在的共同之处抽取出来,然后形象化的描述,在java中抽象的过程就是将事物共...原创 2019-01-07 11:39:46 · 2000 阅读 · 0 评论 -
8、java中的内部类
根据类定义时所在的位置不同可以将内部类分为四大类:成员内部类、方法内部类、静态内部类、匿名内部类。成员内部类顾名思义成员内部类定义在外部类的成员变量位置,相当于外部类的一个成员。将成员内部类当成当前封装类中的一个成员即可,容易理解,外部类中的任何属性和方法在成员内部类中均可直接调用,成员内部类中的任何方法和属性在封装类中也均可使用,但是需要通过声明内部类的实例,通过对象调用。并且内部类中不...原创 2019-01-07 17:13:00 · 305 阅读 · 0 评论 -
9、java中的异常处理机制
Java中的异常(Throwable)分为两类:异常Execption和错误Error。 Error,也就是错误,这个是不可避免的,出现的问题使得应用停止,例如:服务器损坏、内存溢出等。在java中所有的错误都继承自Error类,这个是不可控的。 Exection,也就是异常,是可控的,异常又分为编译时异常和运行时异常,编译时异常是由编码语法错误导致的,在编...原创 2019-01-07 18:22:29 · 141 阅读 · 0 评论 -
10、java中文件的抽象表示
java中使用File类来作为文件和目录路径名的抽象表示,是对于文件或者目录本身的属性来说的,而不是针对于文件的内容。 一些关于File类基本操作的代码如下:public class FileTest { /** * 可用于操作文件或者目录 * @author chaizepeng * * @param args */ public st...原创 2019-01-08 11:43:54 · 254 阅读 · 0 评论 -
11、java中的I/O流(1)
我对于流的理解是这样的,计算机的本质本来就是对输入的数据进行操作,然后将结果输出的一种工具,数据在各个数据源节点之间进行流动,感觉流就是对这种状态的一种抽象,一个数据流表示的就是一系列数据序列,java存在现成的类库可以实现数据的主动获取和处理,这些操作数据的类库构成了java的I/O体系。 流根据不同的方面可以分成不同的类型,根据流向可分为输入流和输出流;根据操作的...原创 2019-01-09 16:55:13 · 168 阅读 · 0 评论 -
12、java中的I/O流(2)
再介绍一下其他一些流的使用数据操作流,数据输入流允许应用程序以独立于机器的方式从底层输入流读取原始Java数据类型,意思就是平台无关,相关的两个类DataInputStream、DataOutputStream,使用如下:public class DataInputStreamTest { public static void main(String[] args) { Data...原创 2019-01-09 19:02:38 · 78 阅读 · 0 评论 -
13、字符集和字符编码
字符集:字符集是多个字符的集合,常见字符集有:ASCII字符集、GB2312字符集、GB18030字符集、Unicode字符集等。 ASCII字符集:是英文大小写字符、阿拉伯数字和西文符号的一个集合。(可以看一下电脑键盘上的键,基本就是这些字符) GB2312字符集:主要包含简体中文字符。 GB10830字符集:基本包含所有中文字符,包括繁体字...原创 2019-01-10 14:23:44 · 913 阅读 · 0 评论 -
14、java中的集合(1)
1、为什么使用集合面向对象语言使用对象体现事物,存储对象可以使用数组,但是数组的长度是固定的,存储的对象类型单一,不适用需求的变化,所以提供了集合。2、集合和数组的区别1)数组长度定义之后不能改变,集合长度可以改变2)数组存储的元素必须是同一类,集合存储的元素可以是不同类3)集合只能只能存储对象类型元素,不可存储基本数据类型数据,数组可以存储任何类型数据,平常使用集合存储整型或者浮...原创 2018-07-22 12:25:37 · 188 阅读 · 0 评论 -
15、java中的集合(2)
说一下单列集合,java中的单列集合的顶级接口是Collection,它有两个子接口:List、Set,本篇介绍一下List接口及其实现类的功能方法和基本实现原理。 List集合是有序集合,这里的有序并不是指存入List集合的元素会被自动排序,而是指数据存储和数据读取的顺序是一样的,就是说按着1,2,3的顺序依次添加元素后,遍历集合时元素也会按着1,2,3的顺序进行打...原创 2019-01-10 18:26:05 · 209 阅读 · 0 评论 -
16、java中的集合(3)
说一下双列集合,顶级接口是Map,实现类有HashMap、LinkedHashMap、TreeMap、HashTable等,使用键值对的格式存储数据,键不可以重复,值可以重复。接下来对实现类做一下详细介绍。 HashMap是最常用的Map集合,它所依赖的数据结构是散列表还有红黑树,添加元素时,现根据添加键值对的key去得到对应的hash值,然后根据hash值和数组的长...原创 2019-01-14 18:43:29 · 111 阅读 · 0 评论 -
17、java中的集合(4)
之前单列集合只说过了List系列的集合,接下来再说一下Set集合系列,Set集合是无序集合(存取顺序不一致),不允许添加相同元素,Set的实现依赖于Map集合,可以将Set集合看作Map集合键的集合,Map中是不可能包含两个键相同的键值对,所以Set集合不允许相同元素也是为此, Set集合的基本实现类有HashSet、TreeSet、LinkedHashSet等,接下来详细介绍。...原创 2019-01-16 18:06:23 · 86 阅读 · 0 评论 -
18、java中的泛型
之前介绍集合时,可以看到有List<String>这样的写法,那么尖括号里的内容是什么呢?这是泛型,意思就是说声明的这个List集合只能存放String类型的元素。泛型是什么? ‘泛’指一般、不深入,在这里可以认为是不确定、可变的意思,java中允许定义一些不确定的类型,不可以是基本数据类型,但是在编译时期一定要给与这些不确定类型一个确定的类型,这就...原创 2019-01-17 17:20:00 · 206 阅读 · 0 评论 -
19、java中枚举
枚举是什么?枚举就是将一个有限集合中的所有元素列举出来,在java中使用可以使用enum关键字来声明一个枚举类。为什么使用枚举?之前当用到一些常量时,便临时声明一个,这样使得代码看起来很乱,这里一个常量,那里一个常量,所以可以想着把一些具有关联性的常量封装到一个类中,类中的每一个变量使用public static final来进行修饰,这样虽然解决了问题,但是不是很优雅,而且还是有点麻...原创 2019-01-17 17:20:36 · 151 阅读 · 0 评论 -
20、java中的类加载机制
1、类加载机制是什么? 类加载机制指的就是jvm将类的信息动态添加到内存并使用的一种机制。2、那么类加载的具体流程是什么呢? 一般说类加载只有三步:加载、连接和初始化,其中连接包括验证、准备和解析,用于将运行时加载的类文件添加到jre环境中使用。 加载:加载就是将类文件读取到内存中并对类...原创 2019-01-18 18:37:24 · 156 阅读 · 0 评论 -
21、java中的反射机制
先推荐安装一个 eclipse 的反编译插件 Enhanced Class Decompiler是什么? 在说反射之前先说一下编译时类型和运行时类型,大家都知道List是一个接口,它是不可以被实例化的,但是可以通过多态实现:List list = new ArrayList(); 对于变量list来说编译时期他被声明为List类型,但是真正使用的确实ArrayList中的成员...原创 2019-01-21 09:38:51 · 208 阅读 · 0 评论 -
22、java中的注解
注解是什么? 注解可以理解成注释、标记、标签的意思,用来标记类、方法等。就相当于现实生活中的一些事物,上边贴一个标签或者写一些注释性文字来描述它可以用来做什么、怎么用、何时用等信息。Java中的注解也是一样的,用来表示被标记的部分可以做什么、怎么做、何时做等信息。注解可以用来做什么? 注解具有生成文档、在编译时期对代码进行检查、运行时期可以动态的实现业务功能,...原创 2019-01-22 20:56:00 · 209 阅读 · 1 评论 -
23、java中的网编基础
什么是网络编程? 在说网络编程之前要先知道什么是网络,网络是一种实现资源共享和数据传输的系统。而网络编程就是使用代码编写程序来进行网络之间数据的传输。使用java进行网络之间数据的传输是比较简单的,java中提供了一些现成的类供我们使用,其实这一块也没什么好理解的,记住就可以了,这里只是简单介绍一下网络之间进行数据传输的方式和如何使用java中提供类进行编程。如何进行数据的传...原创 2019-01-23 16:10:29 · 149 阅读 · 0 评论 -
24、jdbc操作数据库(1)
什么是jdbc?看一下官方怎么说,JDBC 英文名Java DataBase Connectivity,使用java连接数据库的工具,就是一组使用java代码来执行SQL语句的API。Jdbc有什么用?数据库有多种,并且不同数据库操作时的方式和语句可能不太一样,当使用java 代码控制sql 调用时,不可能每一种数据库都弄一套 java 的代码,所以就声明了一个套操作数据库的接口,ja...原创 2019-01-24 18:12:16 · 641 阅读 · 0 评论 -
25、jdbc操作数据库(2)
说一下使用jdbc时涉及到的一些基本的接口和类java.sql.Driver是数据库驱动接口,com.mysql.jdbc.Driver是mysql对应的驱动,由数据库供应商实现,用于提供驱动,实现了java.sql.Driver接口。java.sql.DriverManager管理驱动的类,可以使用DriverManager通过驱动来获取数据库连接。java.sql.Conn...原创 2019-01-25 18:06:53 · 120 阅读 · 0 评论 -
26、jdbc操作数据库(3)
1、结果集的元数据操作 ResultSetMetaData 是描述ResultSet的元数据对象,可以通过元数据对象获取结果集的列信息,使用方式如下:public void query() { Connection connection = DBUtil.getConnection(); String sql = "SELECT ID,UNAME u,PASSWORD FROM US...原创 2019-01-29 18:05:20 · 186 阅读 · 0 评论 -
27、jdbc操作数据库(4)
数据库连接池是什么?为什么使用连接池?当使用jdbc去操作数据库时,需要先获取连接,然后进行具体的数据库操作,最后释放连接。这一系列操作在演示一个demo时还可以使用,但是当访问数据库次数多了的时候,就会显得很繁琐,除此之外还容易造成内存泄漏、数据库崩溃等复杂问题。所以为了解决这一问题,就出现了数据库连接池,顾名思义就是使用一个盛有数据库连接的池子来管理数据库连接,连接池负责分配、管理和释放数...原创 2019-01-30 16:33:38 · 155 阅读 · 0 评论 -
28、jdbc操作数据库(5)
介绍一个稍微封装了jdbc的工具类org.apache.commons.dbutils,使用dbutils可以简化对数据库操作程序的开发。API介绍接下来通过实例的方式说一下dbutils的具体使用添加jar包:commons-dbutils-1.7.jar增、删、改进行增、删、改操作,在这里(未使用数据源)只需传入数据库连接、sql、占位符值到update方法中即可完成操作。...原创 2019-02-14 17:50:30 · 121 阅读 · 0 评论 -
29、jdbc操作数据库(6)
通常真正实际开发时,dao层虽然会涉及很多实体,但是可以借助泛型、反射、一些简单工具类来封装一些通用的查询、更新等操作的方法,下面介绍两种方法第一种:借助元数据类ResultSetMetaData来实现方法的封装,使用Map或者List集合来实现数据的封装(自己感觉使用Map封装数据比实体好),代码如下:public class BaseDao { private Connectio...原创 2019-02-15 10:32:01 · 142 阅读 · 0 评论 -
30、JAVA_WEB开发基础之servlet(1)
servlet是什么Servlet 是一种独立的 web 开发标准,用来接受、处理、返回浏览器的访问请求,它不应和服务器耦合在一起,servlet和servlet容器之间相互独立又相互依存,自我感觉,servlet有了容器才得以实现自己的价值,容器也因有了servlet而变得更加强大,servlet更像是一种规范和一种机制。Servlet 是 Java Web 技术的核心基础,通常我们说的Se...原创 2019-02-15 13:42:27 · 179 阅读 · 0 评论 -
31、JAVA_WEB开发基础之servlet(2)
使用servlet需要依赖jar包:servlet-api.jar,下边介绍一下关于servlet的一些apiServlet接口package javax.servlet;import java.io.IOException;public interface Servlet { //在servlet被载入后和实施服务前由servlet引擎调用。如果init() ...原创 2019-02-15 14:55:54 · 206 阅读 · 0 评论 -
32、JAVA_WEB开发基础之jsp
是什么是简化servlet的一种技术,将html语句和java代码混合在一个文件中进行编写,只对网页中动态产生的内容用java代码编写,静态内容仍用html语句编写运行原理jsp本质上是一个servlet ,每个jsp页面第一次被访问时,jsp引擎将它翻译成一个servle源程序,接着再把这个servlet源程序翻译成servlet的class类文件,然后再由web容器像调用普...原创 2019-02-15 16:48:43 · 195 阅读 · 0 评论 -
33、JAVA_WEB开发基础之会话机制
会话是什么一个客户端浏览器与web服务器之间连续发生的一系列请求和响应过程就是会话,这些过程中产生的一系列信息就是会话信息,会话机制就是用于维护这些信息一致性的一种技术。通俗的说就是,一个A账号访问服务器,进行多次交互产生了一些信息,对于无状态Http协议来说,每来一次请求他都会处理一次,认为是一次新客户端的请求,所以他没有办法维护这些信息的一致性,所以便出现了会话这一概念,有了会话技术,就可...原创 2019-02-16 19:04:55 · 230 阅读 · 0 评论 -
34、JAVA_WEB开发基础之EL表达式和标签
EL表达式是什么一种从域对象中获取数值的简化写法,el表达式语法格式为:${域对象.参数名}使用方式取出request范围内的参数:{pageContext.request.username} 或者是 ${requestScope.username}取出session范围内的参数:{pageContext.session.username} 或者是 ${sessionScope.u...原创 2019-02-16 20:37:18 · 116 阅读 · 0 评论 -
35、JAVA_WEB开发基础之过滤器
是什么过滤器javaweb的一个重要组件,一种规范,可以对发送到serlvet的请求进行拦截和响应进行过滤。实际开发中可以使用过滤器来对访问服务器的请求进行过滤,以提高安全性过滤器的原理可以配置过滤器对指定的请求进行过滤,就相当于在服务器和客户端之间增加了一层过滤膜,对一些请求必须经过过滤膜的过滤才能到达服务器,在过滤的过程中,可以对请求信息进行操作,其基本原理如图,及其简单:...原创 2019-02-16 21:08:59 · 121 阅读 · 0 评论 -
36、JAVA_WEB开发基础之监听器
是什么顾名思义就是监听器就是监听器,在开发中指的是一种机制,通过这种机制可以对应用中组件的创建、销毁、更改等动作进行监视,根据具体监听信息作出相应的处理工作原理就是预先给组件添加一个事件,当这个组件被操作,并且正好满足了对应的条件,这就是触发了监听器,接下来这个组件可以自动的调用预先添加的事件进行业务处理,这就是监听器进行工作了JAVA_WEB中如何使用监听器在javaweb开...原创 2019-02-18 13:04:50 · 123 阅读 · 0 评论 -
37、JAVA_WEB开发基础之上传功能
是什么上传指的是将客户端的文件保存到服务器的磁盘中基本实现原理读取客户端的文件信息,将文件信息以流的形式发送到服务器,然后服务器将流中的信息保存到本地,以实现文件的上传实例注意:提交的表单类型一定是 enctype="multipart/form-data" <%@ page language="java" contentType="text/html; chars...原创 2019-02-21 18:24:23 · 124 阅读 · 0 评论 -
38、JAVA_WEB开发基础之下载功能
是什么下载指的是将服务器端的文件保存到客户端的磁盘中基本实现原理根据对应的要下载的文件在服务器端找到对应的文件,然后获取到文件流对象,将流对象发送到客户端,然后客户端通过对返回结果中文件流的解析,将流对象转换成相应的文件保存在客户端的磁盘中,以实现下载效果实例<%@ page language="java" contentType="text/html; charset...原创 2019-02-21 18:24:27 · 150 阅读 · 0 评论 -
39、JAVA_WEB开发基础之ajax和json
ajax是什么首先要知道ajax并不是一种新的技术,而是几种技术的强强联合,全称是Asynchronous Javascript and xml,其精髓在于异步加载资源,因此可以实现局部加载效果(因为可以异步加载,所以不需要依靠整张页面加载)ajax的工作环节可将指定格式的数据(一般使用json格式)传递到服务器获取数据;使用xmlhttprequest对象实现一部数据的获取,可以异步...原创 2019-02-21 18:44:59 · 93 阅读 · 0 评论