java基础
wangqiuyue---
这个作者很懒,什么都没留下…
展开
-
Java截取字符串中的最后几个字符
Java中的String类提供了一个substring(int from,int to)方法用于截取字符串中位置为from到to-1位置的字符。因为字符串的字符位置是从0开始的,而substring(int from,int to)的方法是前闭后开的,即[from,to),可以理解为[from,to-1]同时to是可以省略的,to缺省的情况下为截取到字符串的最后一位。那么要截取字符...原创 2019-12-31 16:13:31 · 32504 阅读 · 1 评论 -
String和char[]类型间的相互转化
(1)String类型转char[] 类型,使用String类型的toCharArray()方法;(2)char[] 类型转String类型,使用String.valueOf()方法;package www;public class ww { public static void main(String[] args) { //String转char[] Strin...原创 2019-07-03 14:54:38 · 3089 阅读 · 0 评论 -
深入理解Java中i++和++i
在几乎所有的命令式编程语言中,必然都会有i++和++i这种语法。有些语言中i++和++i既可以作为左值又可以作为右值,在Java语言中,这两条语句都只能作为右值,而不能作为左值。同时,它们都可以作为独立的一条指令执行。可以看到程序中 ++a = 5; 和 a++ = 5;报错了。下面说明i++和++i的实现原理:首先写一个例子:{ int i = 1; i...原创 2019-07-10 13:33:58 · 597 阅读 · 0 评论 -
a=a+b和a+=b有什么不同?
在Java语言中,当参与运算的两个数是byte、ahort或int类型时,他们首先会被转化成int类型,然后在进行计算。然后把计算的结果赋值给用来存储结果的变量。如果用来存储结果变量的类型是byte或者short,这意味着需要把int类型转化成byte或者short类型。a+=b和a = a+b的区别就在于a+=b会隐式的把运算结果转换为a的类型。而a = a+b不会把a+b运算结果的类型隐式转换...原创 2019-07-10 14:13:42 · 1070 阅读 · 0 评论 -
java中ArrayList详解
本文通过实例讲解Java中如何使用ArrayList类。Java.util.ArrayList类是一个动态数组类型,也就是说,ArrayList对象既有数组的特征,也有链表的特征。可以随时从链表中添加或删除一个元素。ArrayList实现了List接口。大家知道,数组是静态的,数组被初始化之后,数组长度就不能再改变了。ArrayList是可以动态改变大小的。那么,什么时候使用Array(数...原创 2019-07-30 17:42:04 · 197 阅读 · 0 评论 -
java中LinkedList详解
Java的LinkedList是一种常用的数据容器,与ArrayList相比,LinkedList的增删操作效率更高,而查改操作效率较低。LinkedList 实现了List 接口,能对它进行列表操作。LinkedList 实现了Deque 接口,即能将LinkedList当作双端队列使用。LinkedList 实现了Cloneable接口,能克隆。LinkedList 实现了java.i...原创 2019-07-30 20:46:43 · 345 阅读 · 0 评论 -
进程 线程 协程 管程 纤程
协程是用户模式下的轻量级线程,操作系统内核对协程一无所知 协程的调度完全有应用程序来控制,操作系统不管这部分的调度 一个线程可以包含一个或多个协程 协程拥有自己的寄存器上下文和栈,协程调度切换时,将寄存器上下纹和栈保存起来,在切换回来时恢复先前保运的寄存上下文和栈 协程能保留上一次调用时的状态,看到这里各种生成器(生成器是被阉割的协程)的概念浮现出来了。。 Windows下的...原创 2019-08-03 22:54:26 · 271 阅读 · 0 评论 -
浏览器请求响应全过程详解
1、在浏览器中输入url,直接输入ip或者输入域名。2、如果输入的是域名就需要通过DNS解析将域名解析成IP地址,通过IP来确认访问的是哪个服务器。3、建立TCP请求(即三次握手)。4、发送http请求。5、服务器处理请求,并将结果返回给浏览器。6、最后断开TCP连接(即四次挥手)。7、浏览器根据返回结果进行处理以及页面渲染。-------------------...原创 2019-07-31 23:33:07 · 4708 阅读 · 1 评论 -
Java 序列化与反序列化
https://blog.csdn.net/q5706503/article/details/84677041https://www.ibm.com/developerworks/cn/java/j-lo-serial/http://www.hollischuang.com/archives/1140#What%20Serializable%20Did原创 2019-08-05 23:27:53 · 112 阅读 · 0 评论 -
AOP与IOC
1. IOC(Inverse of Control):控制反转,也可以称为依赖倒置。它并不是一种技术实现,而是一种设计思想。在任何一个有实际开发意义的程序项目中,我们会使用很多类来描述它们特有的功能,并且通过类与类之间的相互协作来完成特定的业务逻辑。这个时候,每个类都需要负责管理与自己有交互的类的引用和依赖,代码将会变的异常难以维护和极度的高耦合。而IOC的出现正是用来解决这个问题,我们通过I...原创 2019-08-06 20:49:55 · 91 阅读 · 0 评论 -
java初始化块(2)
1、java在初始化的时候首先执行初始化静态代码块(只执行一次),然后非静态代码块,然后构造方法。2、在各个代码块中顺序执行。3、执行顺序:父类static -》子类static-》父类非static-》父类构造-》子类非static-》子类构造4、对于new A(new B());先执行A的static,在执行B的所有,最后执行A的非静态和构造举例:1、无继承,无层次p...原创 2019-06-23 15:30:00 · 118 阅读 · 0 评论 -
String、StringBuffer、StringBuilder的区别以及字符串常量池
1、StringString是Java中基础且重要的类,被声明为final class,除了hash这个属性其他属性都声明为final,因为它的不可变性,所以如果拼接字符串时候会产生很多无用的中间对象,如果频繁的进行这样的操作对性能有所影响。2、StringBufferStringBuffer就是为了解决大量拼接字符串时产生很多中间对象问题而提供的一个类,它提供了append和add方...原创 2019-06-23 13:25:19 · 585 阅读 · 0 评论 -
java 大数值计算 BigInteger 和 BigDecimal
java.math包中有两个重要的类:BigInteger 和 BigDecimal,这两个类可以处理包含任意长度数字序列的数值。BigInteger实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。使用静态valueOf方法可以将普通的数值转换为大数值,不能用熟悉的算数运算符(+/*)处理大数值,只能用大数值类中的add和multiply等方法。(1)BigI...原创 2019-06-18 09:08:19 · 582 阅读 · 0 评论 -
java 初始化块
java中三种初始化数据域的方法:1、在构造器中设置值 public class Student{ private String name; private int age; public Student(){ this.name = "张梅"; this.age = 15; }}2、在声明中赋值...原创 2019-03-06 18:35:55 · 125 阅读 · 0 评论 -
关于java中 int a=a();
package hhhh;public class Test4 { int a=a(); public int a(){ return 1; } public static void main(String[] args) { // TODO Auto-generated method stub Test4 A=new Test4(); ...原创 2019-03-06 18:40:34 · 1304 阅读 · 0 评论 -
接口冲突
一、接口冲突 a和b两个接口定义了两个同名同参但是不同返回值的函数。Student类继承了两个接口:发现实现哪个方法都会报错。解决:将a或b其中一个方法的返回值改了 ,让二者的返回值统一为int或string。二、超类优先类B实现接口H,继承父类AH和A中有相同返回值、相同方法名、相同类型参数的方法 ,则优先继承父类,即不显式的实现接口也不...原创 2019-03-20 10:43:19 · 702 阅读 · 0 评论 -
session应用
原创 2019-03-20 14:47:00 · 475 阅读 · 0 评论 -
java多态 抽象类 子类 父类 块测试
一、多态java三大特性:继承、封装、多态 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据。对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法。 继承是为了重用父类代码。两个类若存在IS-A的关系就可以使用继承。,同时继承也为实现多态做了铺垫。那么什么是多态呢?多态的实现机制又是什么? 多态就是指程序中定义的 引用变量 所指...原创 2019-03-11 23:00:24 · 1096 阅读 · 0 评论 -
Maven配置2
配置本地仓库配置环境变量查看:配置eclipse连接配置成阿里云的私服:新建maven项目:1.新建maven项目,如果不在上面,请到other里面去找一下2,进入maven项目之后,点击next选择webapp之后 next输入两个id package可以不写,是它默认帮你新建一个包,不写没关系会生成一个这...原创 2019-03-24 16:31:36 · 75 阅读 · 0 评论 -
super/this
例子:package com.mbyte.easy.admin.www;/*** @Author: wqy* @Date: 2019-06-05 10:20* @Version 1.0*/public class Base { public int status = 0; Base(int status){ this.status = st...原创 2019-06-05 11:25:36 · 227 阅读 · 0 评论 -
进程/线程/线程中断/线程池/集群/分布式/分布式集群/负载均衡/并发/并行/锁/nginx/redix/rpc
进程:进程指正在运行的程序。确切的说当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且有一定独立功能。线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。简言之,一个程序运行后至少有一个进程,一个进程中可以包含多个线程。多线程:一个程序中有多个线程在同时执行。每...原创 2019-06-12 21:58:38 · 298 阅读 · 0 评论 -
Java中HashMap的用法详解
package com.mbyte.easy.admin.controller;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * @Author: wqy * @Date: 2019-06-24 16:52 * @Versio...原创 2019-06-25 15:33:17 · 4177 阅读 · 0 评论 -
Java的String类中的startsWith方法和endsWith方法
1、startsWith()方法用于检测字符串是否以指定的前缀开始。语法:public boolean startsWith(String prefix, int toffset)public boolean startsWith(String prefix)参数prefix -- 前缀。toffset -- 字符串中开始查找的位置。返回值如果字符串以指定的前缀开...原创 2019-06-25 17:06:17 · 4917 阅读 · 0 评论 -
java类在调用system.out.println()打印一个新new的对象时,为什么会隐式调用toString方法?
1、首先,在java中所有的对象都是继承自Object类,所以自然继承了toString方法:2、在使用system.out.println()方法,括号里面为对一个对象的引用时将会自动调用toString方法将对象打印出来。如果重写了toString()方法则会调用重写的toString()方法。那么原因是什么呢?**因为System.out.println(...原创 2019-03-04 09:13:09 · 1665 阅读 · 0 评论