Java基础
软工16009彭杰
16009软工彭杰
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java线程
前沿:我们开发中直接用到线程几率不大,大部分用线程框架。但是线程作为知识点是我们要了解。一、什么是Java线程首先说进程,进程简而言之就是运行的程序。而线程是进程的基本单位。二、Java实现线程的方式1继承Thread类public class Task1 extends Thread{ @Override public void run() { System.out.print...原创 2019-03-23 20:50:47 · 175 阅读 · 0 评论 -
Java volatile关键字
volatile关键字的作用是CPU在Cache(高速缓冲区)取值时,如果字段被volatile修饰,那么在主存里找字段的值再一次放在Cache,再计算。因为volatile修饰的字段可以被其他线程,操作系统等修改它的值。...原创 2019-04-06 21:22:32 · 183 阅读 · 0 评论 -
Java fail-fast机制
一、fail-fast机制是什么多线程情况下,Iterator遍历集合时,其他程序对集合进行了操作(增删)。就会报错ConcurrentModificationException。二、原理是什么public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E...原创 2019-04-05 20:36:05 · 256 阅读 · 0 评论 -
Java 序列化高级篇
我们只知道类实现Serializable 或者Externalizable就能实现序列化,存储在本地。但是多了解一些总是有好处。一、序列化ID序列化ID=属性名+时间戳,反序列化的前提是序列化ID得相同。Eclipse提供两种产生序列化ID的方法,一种是:属性名+时间戳,另一种是我们一般用1L表示。设计模式中有Faced模式。S:服务器C:客户端D:通过D对象才能访问a和ba:a...原创 2019-04-05 19:26:45 · 285 阅读 · 0 评论 -
Java序列化和transient
Java实现序列化有两种方式一、继承Serializable接口它是一个标志性接口,没有任何需要实现的方法。继承之后使用ObjectOutputStream把对象写入到文本中,如果没继承就会报错。它会把整个对象序列化存储到文本中,如果某个字段你不想存储在文本中,比如密码。在字段前加上transient告诉Java这个字段不用序列化。也就不会存储在文本中。二、继承Externalizable...原创 2019-04-05 18:15:02 · 217 阅读 · 0 评论 -
JAVA网络编程
一、IP,端口,资源对应的Java类1.IP public static void main(String[] args) throws Exception { // TODO Auto-generated method stub InetAddress i = InetAddress.getLocalHost(); System.out.println(i.getHostName...原创 2019-03-27 16:41:57 · 202 阅读 · 0 评论 -
Java的BIO、NIO和AIO
一、Reactor和Proactor讲这三者区别之前对一下几个概念做区别,我这就不用生硬的知识了,因为能用自己话说才是真的吸收到了知识:同步:自己去买衣服,但是你做不了其他的事异步:把型号,款式告诉别人,让他给自己买阻塞:去买票,售票员上厕所去了,在售票窗口等着售票员回来。非阻塞:去银行办业务得领号等着,期间轮询询问到我了没。同步阻塞:去吃饭,等着餐馆老板煮好饭。...原创 2019-04-04 21:27:14 · 194 阅读 · 0 评论 -
StringBuilder和StringBuffer
前沿对于字符串拼接等操作,操作多的情况会很耗内存,使用StringBuilder和StringBuffer能解决。一、StringBuilderStringBuilder相当于一个容器存字符串。 @Test public void test() { StringBuilder sb = new StringBuilder("abc"); sb.append("123"); sb...原创 2019-03-23 21:05:07 · 148 阅读 · 0 评论 -
JVM虚拟机
一、Java虚拟机里面有什么东西1.类加载子系统,方法区,Java堆,直接内存,垃圾回收器,执行引擎,Java栈,本地方法栈,PC寄存器。(1)类加载子系统:从网络或者文件系统中加载Class文件。(2)方法区:存字符串,类的信息,静态方法,静态常量等。(3)Java堆:存Java对象(重点讲)(4)直接内存:执行NIO库操作需要大量读写,在直接内存里执行效率更快。(5)垃...原创 2019-03-21 12:33:18 · 228 阅读 · 0 评论 -
JAVA文件操作知识
前言:做Web开发,用户能上传头像,文件等等,需要用到文件操作。一、File类1.File类作用是什么:JAVA除了8个基本数据类型都是对象。对象都有自己的类,类是对某一类东西的概述。比如persion类,它的属性有name,age,sex等。同理,File类就是对文件的描述(文件包括目录)。File类里面有方法。注意:File类是对文件的概叙,没包括里面的数据,所以我们只能对文件增删改查,对...原创 2019-03-22 14:51:36 · 239 阅读 · 0 评论 -
JAVA反射
前沿:Java反射在框架中有用到,比如Spring的IOC,根本技术就是反射。一、JAVA反射是什么1.Java反射是把类中的成员映射成相对应的Java中的类型。反射用到一个类叫Class,它表示Java的字节码文件,它的对象表示某一个字节码文件。二、学习JAVA反射1.获取Class类有三种方式获取Class类对象.getClass();Class.forName()里面的参数是...原创 2019-03-23 18:34:26 · 440 阅读 · 0 评论 -
JAVA类加载全过程和类加载器
一、加载一个类通过javac的编译变成字节数组,然后静态的字节数组加载到Java虚拟机的方法区中,静态数据变为运行的数据。同时在Java虚拟机的堆中产生一个java.lang.Class的对象,该对象指向前面说的运行的数据。二、链接它就是把java二进制数据合并到JVM运行状态中验证:确保不会发生安全问题准备:在方法区中对静态变量分配内存和赋初值。解析:将符号引用变为直接引用符号引...原创 2019-03-29 11:17:47 · 341 阅读 · 0 评论
分享