
Java
文章平均质量分 58
Yolandera
这个作者很懒,什么都没留下…
展开
-
Java - 小技巧 - 移位运算
我们知道 >> 和 << 是位运算符,>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1;>>> 表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。public class Test { public static void main(String[] args) { ...原创 2019-04-02 16:55:15 · 431 阅读 · 0 评论 -
Java - Eclipse中的Maven的安装与配置
一什么是 MavenMaven是项目管理工具,开发者可以将自己的代码编写好之后打包成后缀名为.jar的文件,俗称jar包。在项目中引入jar包可以直接复用他人编写好的代码,从而实现相应功能。比如我们将要在开发中使用Spring Boot框架,其本质就是在使用该框架概念中的一系列jar包。在传统的方式中我们一般通过各种渠道手动下载jar包,这样产生的问题是获取和管理各类jar包都显得十分麻烦。在使...原创 2018-10-04 03:03:42 · 2174 阅读 · 1 评论 -
Java - Spring Tools的安装与配置
一 下载 Eclipse for Java EEhttps://www.eclipse.org/downloads/进入后点击download packages:下拉找到 Eclipse IDE for Java EE Developers,双击在右边可以选择自己喜欢的版本。这里下载的是最新版本4.9.0二 安装Eclipse我把它解压安装到了D盘,(额外提一句,由于Eclipse...原创 2018-10-04 01:47:23 · 5076 阅读 · 0 评论 -
Java - 接口和抽象类的区别
接口和抽象类有什么区别接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。人可以吃东西,狗也可以吃东西,你可以把“吃东西”定义成一个接口,然后让这些类去实现它.所以,在高级语言上,一个类只能继承一个类(抽象类)(正如人不可能同时是...转载 2018-10-03 18:15:35 · 221 阅读 · 0 评论 -
Java -暂时不好解释的现象
Java 给方法传入不同的参数类型(参数本身抑或是参数的成员变量)会不会改变本身的参数的值?public class Main { private static void getMiddleOne(boolean b, Boolean boo, Boolean[] arr){ b = true; //形参,不会改变原有值 boo = new Boolean(true); //引...转载 2018-10-03 17:47:44 · 219 阅读 · 0 评论 -
Java - 多线程(五) 原子性 可见性 有序性
一 原子性 二 可见性三 有序性转载 2018-09-14 21:54:51 · 188 阅读 · 0 评论 -
Java - 集合(六) 总结
重要知识点总结: 一 集合与数组的比较1.数组容量固定且无法动态改变,二 ArrayList 和 LinkedList 的区别和联系 联系: 均实现了List接口 有序,不唯一区别:这里写代码片三 哈希表的原理(HashMap的原理) …拓展 ·hashCode() 和 equals() 方法的作用 ·如何减少冲突 ·如何产生...原创 2018-09-11 10:51:35 · 152 阅读 · 0 评论 -
Java - 关键字this/super
一 this二 super原创 2018-10-09 23:23:04 · 222 阅读 · 0 评论 -
Java - 注解()
JDK 1.5 后引入了注解这一特性在java.lang包下1 作用不是程序本身,可以对程序作出解释,而且可以被其他程序读取.2 格式@注解名还可以添加参数,如@SuppressWarnings(value=“unchecked”)3 使用范围可以附加在package,class,method,field等上面,相当于给它们添加了额外的辅助信息,可以通过反射机制编程实现对这些元数据...原创 2018-11-06 17:59:51 · 197 阅读 · 0 评论 -
Java - 反射(reflect)
一 什么是反射正常情况下,如果已经有一个类,则肯定可以通过类创建对象.而反射可以实现通过一个对象找到一个类.二 Class类Class类是java.lang包中的类.当程序使用某个类时,Java虚拟机会将该类加载到内存中,该类的class文件读入内存,并为该类创建一个java.lang.Class对象,它包含了与类有关的信息.每个类都有一个Class对象,即每当编写并编译了一个新类时,就会...原创 2019-03-07 15:59:52 · 384 阅读 · 0 评论 -
Java - 小技巧(一) - 交换两个整数
三种方案,只有第一种(最常见)需要额外空间class Test{ public static void main(String[] args) { int a = 85; int b = 94;// int temp = b;// b = a;// a = temp; // ...原创 2019-03-06 16:50:04 · 548 阅读 · 0 评论 -
Java - 内部类和匿名类
一 内部类内部类是定义在另一个类内部的类.1.内部类被当作外部类的成员,因此内部类可以直接访问外部类的似有成员,同一个类的成员之间可以互相访问,但是外部类不能直接访问内部类的成员.2.匿名内部类,没有具体名称的类,在定义匿名内部类的同时系统会自动生成一个该类的实例,匿名内部类适用于一个类仅被使用一次的情况:new 接口名()或类名(实参列表) { //类体}从上面的定义可以看出匿名...原创 2019-03-06 11:38:59 · 474 阅读 · 0 评论 -
Java - 接口
接口可以理解为一种特殊的“类”,是由常量和抽象方法组成。接口是对类的描述,描述类有什么功能,但不给出功能的具体实现1 接口的定义、继承和实现<public><abstract> interface 接口名[extends 父类接口列表]<public><static><final> 变量名 = 初值;<public>...原创 2019-02-21 09:30:29 · 195 阅读 · 0 评论 -
Java - 多版本jdk安装、配置Eclipse
一 下载多版本jdk以jdk8 和jdk9为例1 进入官网下载2 下载安装到默认路径:3 配置环境变量把上面想用的jdk版本写进系统变量path中:4 进入命令行查看:以后如果想用jdk9,就直接修改环境变量。注意:修改后要移动到顶行,不然可能不会生效。当然也可以在命令行输入echo %path%,Linux系统可以输入 source /etc/profile5 配置Ec...原创 2018-12-11 16:27:53 · 517 阅读 · 0 评论 -
Java - 参数传递机制
Java 中,方法中的所有参数都是“值传递”,也就是“传递的是值的副本”.也就是说,我们得到的是“原参数的复印件,而不是原件”.因此,复印件改变不会影响原件.1 基本数据类型参数的传值传递的是值的副本,副本改变不会影响原件2 引用类型参数的传值传递的是值的副本.但是应用类型指的是”对象的地址”.因此,副本和原参数都指向了用一个“地址”,改变“副本指向地址对象的值”,也意味着原件指向地址对象...转载 2018-11-05 15:45:10 · 310 阅读 · 0 评论 -
Java - 多态(polymorphism)
一 多态的基本概念同一个方法调用,由于对象不同可能会有不同的行为。多态是方法的多态,不是属性的多态。二 多态的条件1.继承(实现)2.方法重写3.父类引用指向子类的对象三 实现方式1. 不同的子类对父类同一方法给出不同的实现2. 父类型的引用指向子类实例对象四 代码package Polymoriphism;public class TestPolym { pub...转载 2018-11-07 15:43:08 · 685 阅读 · 0 评论 -
Java(基础) - 封装(Encapsulation)
一 封装的基本概念将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。二 封装的好处1. 良好的封装能够减少耦合。2. 类内部的结构可以自由修改。3. 可以对成员变量进行更精确的控制4. 隐藏信息,实现细节。三 实现方式修改属性的可见性来限制对属性的访问(一般限制为private)public class Person {...转载 2018-11-07 15:00:45 · 470 阅读 · 0 评论 -
Java(基础) - 继承(inheritance)
一 封装作为一个保护屏障,将类中的具体代码实现细节进行包装盒隐藏,防止该类的代码和数据在外部调用时被访问。封装的思想保证了类内部数据结构的完整性,提高了程序的安全性和可维护性。往往将类中某个字段私有化(private),再提供公有方法(getter/setter)。setter方法可以对数据进行合法性判断。Java 访问修饰符有4种 public protected friendly pr...转载 2018-10-02 18:13:12 · 740 阅读 · 0 评论 -
Java - JVM(三) 垃圾收集器与内存分配策略
一 重点关注的数据区域: 堆 和 方法区Java内存运行时区域中的程序计数器、虚拟机栈、本地方法栈3个区域随线程生,随线程灭;每 一个栈帧中分配多少内存是在类结构确定下来就已知的,因此这几个区域的内存分配和回收都 具备确定性.二 垃圾回收之如何判定对象已死?1 引用计数算法给对象添加一个引用计数器,没当一个地方引用它时,计数器就加1;当引用失效 时,计数器就减1.任何计数器为...原创 2018-09-14 13:01:17 · 232 阅读 · 0 评论 -
Java (七) 多线程(2) —— 线程的创建和启动
一 线程的创建和启动 方式1:继承Thread类1.自定义一个类继承Thread类,这个类就是多线程类.2.[重写]Thread类里面的run方法,把需要执行的自定义线程代码放入这个run方法.3.创建线程类对象4.开启线程,使用start()方法[优点]: 编程简单[缺点]: Java是一个单继承的语言,一旦一个类继承了Thread类,就无法再继承其他类.方式2:实现R...原创 2018-09-09 00:17:27 · 247 阅读 · 0 评论 -
Java (基础) - 字符串 String 与 字符串类 StringBuffer StringBuilder
一 String1 不可变字符序列public class TestString { public static void main(String[] args) { String str = &amp;quot;我爱Java&amp;quot;; System.out.println(str.length()); //String 是一个不可变序列,直接使用toUp...原创 2018-09-11 15:51:42 · 251 阅读 · 0 评论 -
JavaSE (七) ——多线程 (1) —— 进程与线程
一 并发与并行 并发 concurrency 一个CPU交替处理多个事物,如一个咖啡屋为两个队列服务 并行 Parallelism 多个CPU同时执行多个事务,如两个咖啡屋为两个队列服务二 进程与线程 线程 Thread 进程内部的一个执行单元 ·轻量级进程 ·独立调度的基本单位 ·可并发执行 ·共享进程资源(如内存资源,网络资源)进程 Process · 独...原创 2018-09-04 11:39:50 · 241 阅读 · 0 评论 -
Mysql的安装(MacOS 10.13)
一 下载地址.找到dmg格式的直接下载,需要登陆oracle.二 下载完成后,直接双击安装. 过程傻瓜式的,其中一项密码的选项最好选下面那个“Use Legacy Password Encryption”.三 进入Mysql瞧瞧 四 配置环境变量,方便以后使用 先进入mysql的安装目录cd /usr/local/mysql再用vim编辑环境变量,我的...原创 2018-08-28 10:09:10 · 3422 阅读 · 0 评论 -
Java(基础)-自动拆装箱
1.什么是拆装箱 装箱就是将原始类型值转换成对应的对象,拆箱就与之相反。 这里再复习下Java中的数据类型 装箱的基本数据类型和对应的封装类如下:int——Integer——4Byte short——Short——2Byte long——Long——8Byte float——Float——4byte double——Double...转载 2018-07-24 11:15:40 · 649 阅读 · 0 评论 -
Java 多线程(三) 线程间通信
(待续)原创 2018-09-09 00:28:48 · 182 阅读 · 0 评论 -
Java - 多线程(四) 线程池
…原创 2018-09-09 00:29:26 · 182 阅读 · 0 评论 -
Java - 关键字static
static关键字· 静态修饰符· 所谓静态是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只要程序在运行,那么这块内存就会一直存在。· 这就导致了被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问。· static可以修饰方法 变量 方法块static 方法static 方法又叫静态方法《Java...转载 2018-09-24 01:27:33 · 246 阅读 · 0 评论 -
Java - 集合(五) Iterator
..原创 2018-09-10 21:52:06 · 206 阅读 · 0 评论 -
Java 集合(四) Map
https://www.cnblogs.com/lwlxqlccc/p/6143887.html 这篇总结的不错原创 2018-09-10 21:20:48 · 188 阅读 · 0 评论 -
Java-集合(番外) equals() 和 HashCode()
要面试,没时间写了,挖个坑原创 2018-09-10 20:53:16 · 319 阅读 · 0 评论 -
Java-集合(三) Set接口
Set –HashSet 使用散列函数实现,极大的提高了访问速度。存入HashSet的对象必须定义hashCode() –LinkedHashSet 使用了链表来保持插入顺序,不过为了提高查询效率,也使用了散列。 –TreeSet 使用红黑树来实现, 时刻维持有序,平衡.Set方法比List方法少一点import java.util.HashSe...原创 2018-09-10 18:38:25 · 217 阅读 · 0 评论 -
Java - 集合(二) List ArrayList LinkedList
List –ArrayList 线性表中的顺序表在 内存中分配连续的空间 查 效率高 增 删效率低 –LinkedList 线性表中的双向链表 内存中分配离散的空间 查 效率低 增 删效率高一 ArrayList ·实现了List接口 ·成员变量size 和 capacity 的区别:size 指的是ArrayList数组元素的个数ca...原创 2018-09-09 23:44:37 · 219 阅读 · 0 评论 -
Java 集合(一)
集合又称为容器,是Java基本数据类型的扩展 Array List Set原创 2018-09-09 20:29:58 · 185 阅读 · 0 评论 -
JavaSE(二)—— 数据类型
..原创 2018-09-09 20:30:28 · 204 阅读 · 0 评论