![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础知识点
文章平均质量分 90
whx_ls
这个作者很懒,什么都没留下…
展开
-
java基础知识-面试(二)
Collections和Collection有何区别?java.util.Collection是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法,Connection接口在java类库中有很多具体的实现,Connection的意义是为各种具体的集合提供了最大化的同一操作方式List 、Set、Queue接口都继承CollectionAbstractConnection —实现了Collection接口,并对简单一些方法做了实现比如isEmpty();java.util.Collectio原创 2021-06-23 16:09:20 · 302 阅读 · 0 评论 -
JVM执行分析
jvm详解概述对于java程序而言,现在应用的范围越来越广泛,那么对于从业者就不再只是单单能够实现项目需求就够了,除了这些之外,还需要对程序的调优具有一定的能力。 类加载器(ClassLoader),用户可以实现自定义的类加载器的处理操作,那么对于类加载器本身就属于JVM的重要组成范畴。java程序的执行流程: 每当使用了类加载器进行类加载之后实际上都表示启动了一个JVM的进程,那...原创 2018-06-09 15:26:54 · 787 阅读 · 0 评论 -
java-Annotation操作
Annotation操作Annotation操作:减少配置的出现 Annotation的开发与定义在程序中有所支持取得配置的Annotation 在Class AccessibleObject类(java.lang.reflect)里面提供有取得一个结构(构造、方法、成员)的所有Annotation定义 方法:public Annotation[] getAnnotati...原创 2018-06-16 16:50:26 · 223 阅读 · 0 评论 -
java-代理设计模式(四)
代理设计模式代理模式的基本结构 代理设计模式的核心思想就是:一个接口有若干个子类,其中有一个是真实主题类,负责真实的操作,要想完成这一功能必须有代理类负责,以学生上课和看门大爷为例: 观察程序的执行:package com.csii.wanghaoxin.demob;interface Subject{ public void study();}class ...原创 2018-06-16 23:08:00 · 286 阅读 · 0 评论 -
JVM内存模型与垃圾收集
JVM内存模型与垃圾收集JVM堆内存模型 JVM的垃圾收集主要指的是堆内存空间,那么在每一次执行GC的时候需要区分出哪些堆内存空间需要被回收,哪些不需要被回收,所以为了整体的回收处理方便,JVM将堆内存分为如下的几个组成部分,而这几个组成部分还需要去考虑JDK版本,现在的JVM内存划分就必须考虑JDK1.8之前和JDK1.8之后的问题了jdk1.8之前主要分为 新生代、Eden...原创 2018-06-11 11:05:32 · 235 阅读 · 0 评论 -
JVM垃圾收集策略(包含G1垃圾回收器和传统GC)
JVM垃圾回收- jvm垃圾回收策略概述JVM会自己选择合适的垃圾收集策略,而用户也可以自己来设置所需要的垃圾收集策略,但是就个人而言,强烈建议采用默认的垃圾收集处理机制。垃圾的收集一定要分两个空间考虑:年轻代、老年代。老年代的内存空间要大于年轻代的内存空间,所以老年代的对象每一次执行GC都会消耗更多的时间。同一种垃圾收集的策略,有可能会根据触发内存代的不同有不同的效果,所...原创 2018-06-10 14:30:35 · 2428 阅读 · 0 评论 -
Java引用类型分类以及详解
Java引用类型分类以及详解- Java引用类型概述在JVM之中再好的算法,也敌不过一个好烂的程序员。一个程序要想写好有两点:按照开发标准进行、请写有用代码。 而对于垃圾的产生与回收的处理之中,要想进行更好的控制,就必须清楚的掌握Java中的四种引用方式。 强引用(Strong Reference):即使进行了多次的GC回收,即使JVM真的已经不够用了,即使JVM最终不得已抛出了O...原创 2018-06-11 00:10:46 · 8050 阅读 · 2 评论 -
Maven配置和使用(三)- 依赖包管理
Maven配置和使用(三)- 依赖包管理依赖包管理 对于Maven项目而言,依赖包是它的绝对核心所在,所有的开发项目所需要的*.jar文件都需要通过依赖包的形式来实现相关的配置,但是对于依赖包也需要注意两点问题:包的作用域、包的排除问题1.包的作用域: 在一般进行WEB项目开发的时候,往往都会将所有的开发程序打包为一个*.war文件。那么在这个war文件里面就会存在有lib的目录保存所...原创 2018-07-10 00:18:57 · 11703 阅读 · 0 评论 -
Java多线程与并发(一)
多线程与并发的基础问题并发就是指程序同时处理多个任务的能力(一个程序被多个用户访问都能看到自己预期的结果) 并发的根源在于对多任务情况下访问资源的有效控制!并发背后的问题public class DownloadSimple { private static int user = 1;//同时模拟的并发用户访问数量 //private static int ...原创 2018-08-12 23:35:55 · 524 阅读 · 0 评论 -
Struts2(一)
Struts入门 Struts2的概念和作用: Struts概念:是Apache下的java开源框架,基于MVC设计模式的应用框架,本质上相当于Servlet(用来处理页面传送参数,处理响应),Struts最为MVC中的控制器来建立模型和视图的数据交互,是一个基于MVC的web应用框架,是解决表现层的逻辑框架,Web层:Servlet+JSP、Struts2、SpringMVC Se...原创 2018-08-19 12:33:25 · 320 阅读 · 1 评论 -
Java多线程与并发(三)
Condition等待和唤醒在我们的并行程序中,避免不了某些写成要预先规定好的顺序执行,例如:先新增后修改,先买后卖,先进后出,对于这些场景,使用JUC的Conditon对象再合适不过了。JUC中提供了Condition对象,用于让指定线程等待与唤醒,按预期顺序执行。它必须和ReentrantLock重入锁配合使用Condition用于代替wait()/notify()方法 wa...原创 2018-08-16 20:55:49 · 372 阅读 · 1 评论 -
Struts2(二)
ContextMap(值栈)与OGNL表达式OGNL基本语法 OGNL—强大的表达式语言,类似于jsp中的el表达式,可以存取对象的任意属性,调用对象的 方法,实现字段类型的转换OGNL表达式的特点: 1)是一门功能强大的表达式语言,可以存取对象的属性,调用对象的方法 2)OGNL是struts2默认支持的语言 3)在Struts2的程序中,必须使用struts2标签来使用OG...原创 2018-08-19 21:38:22 · 295 阅读 · 1 评论 -
Spring(一)
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...原创 2018-08-22 20:54:52 · 417 阅读 · 1 评论 -
Spring(二)
Spring-AOPAOP思想概述 AOP面向切面编程,AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间耦合度降低,提高程序的可重用性,同时提高了开发效率:主要功能:日志记录。性能统计,安全控制,事务处理,异常处理AOP:分离业务代码,提高程序的可用性把各个业务逻辑的相同部分抽离出来,作为公共部分使用AOP底层实现技术 关键词代理模式: 代理模...原创 2018-08-24 23:52:02 · 486 阅读 · 0 评论 -
java-Web对于反射的支持+ClassLoader(三)-非重点
Web对于反射的支持非重点: 在我们现在的开发之中,假设回归到模式一的时代,那么这个过程里面重点就是JSP+JavaBean的时代,那么在这种模式下,用户需要接受请求的参数,然后将其变成简单java类,而这一过程JSP本身就已经做了优化。l在JSP里面提供有三类标签指令: 1.定义Bean操作(自动利用反射实例化对象):将自动调用无参构造实例化对象<jsp:useBean i...原创 2018-06-16 14:34:16 · 372 阅读 · 0 评论 -
java反射操作类结构(二)
java反射操作类结构反射操作构造方法 Class只是作为反射的操作源头,但是严格来讲,反射还有其他内容。反射给用户最大的方便有三点: 1.构造调用 2.方法调用 3.属性调用 在反射机制里面提供有java.lang.reflect包,包中最重要的三个类: Constructor、Method、Field构造方法调用 利用Class类中的forName()方法可以取得Cl...原创 2018-06-16 10:56:05 · 346 阅读 · 0 评论 -
java基础常见问题解析(二)-内部类的使用
基础知识内部类关于内部类的说法, 错误的是 a. 内部类不能有自己的成员方法和成员变量 b. 内部类可用abstract 修饰定义为抽象类,也可以用private 或protected 定义 c. 内部类可作为其他类的成员,而且可访问它所在类的成员 d. 除static 内部类外,不能在类内声明static 成员/* * 内部类分为四种情况: * 1:成员内部类...原创 2018-05-12 01:17:17 · 1317 阅读 · 0 评论 -
java基础常见问题解析(三)ArrayList和LinkedList
ArrayList和LinkedList的使用以及扩展ArrayList :以数组的形式存储 LinkedList:以链表的形式存储例题关于ArrayList 的描述中, 错误的是 a. 存储密度比LinkedList 大 b. 不限制大小和类型 c. 节点中只有自身信息域, 没有链信息域 d. 便于进行插入、删除等运算操作public class ListDem...原创 2018-05-12 11:55:48 · 194 阅读 · 0 评论 -
java基础-开发生态介绍
java开发生态介绍java和class格式分析java经过编译后产生.class字节码 java跨平台javac编译.java文件得到.class文件(字节码文件),之后由JVM将.class文件解释成机器码来运行。 DLL:windows系统的动态链接库扩展: javaweb项目的开发环境Web服务器可以用来解析web中的jsp等等,接受请求 处理请求...原创 2018-05-12 13:33:51 · 799 阅读 · 0 评论 -
java基础常见问题解析(四)堆、常量池、方法区栈与队列
堆、常量池、方法区栈与队列在Java 中,下面关于String 类和StringBuffer 类的描述正确的是哪一个 a. StringBuffer 类的对象调用toString()方法将转化为String 类型 b. 两个类都有append()方法 c. 可以直接将字符串”test” 赋值给声明的String 类和StringBuffer 类的变量 d. 两个类的实例的值都能够改变...原创 2018-05-12 14:15:01 · 1270 阅读 · 0 评论 -
java基础常见问题解析(五)输入输出流以及序列化和session
输入输出流以及序列化和session在Java 语言中,ObjectOutPutStream 是指 a. 字节流 b. 字符流 c. 对象输出流 d. 数据流输入和输出流I/O流—1.字节流 InputStream (读非字符数据 比如图片 音频等) –读字节 是所有字节输入流的超类 每次读取一个字节 (8bit) 与OutputStream对应 最常用 Fil...原创 2018-05-12 15:02:21 · 410 阅读 · 1 评论 -
java基础常见问题解析(六) 线程+并发机制
java线程+并发机制有关线程的哪些叙述是对的 a. 一旦一个线程被创建,它就立即开始运行(需要等待CPU调度) b. 当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面 c. 一个线程可能因为不同的原因停止(cease)并进入就绪状态(时间片已到) d. 使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行线程的状态线程有五个状态: 创建状...原创 2018-05-12 22:02:05 · 4103 阅读 · 2 评论 -
java基础常见问题解析(七)javaWeb基础知识
javaWeb基础知识javaWeb的虚拟目录虚拟目录 是指在开发中用到的目录结构层次,但这些在部署的时候有些并不真实存在;比如在进行javaWeb项目开发的过程中,我们会用到的WebRoot : 是虚拟目录 (存放jsp页面) 和 src : 虚拟目录 ,这些目录名称在javaWeb项目部署到web服务器上的时候其实根本不存在,所以称为虚拟目录Web项目部署到Tomc...原创 2018-05-13 00:56:53 · 863 阅读 · 0 评论 -
JSON的配置和使用
Josn的配置和使用JSON的基本概念1.JSON(JavaScript Object Natation) —-javascript的对象表现形式,但是目前已经发展成为一种轻量级的数据交换格式最大特点:完全独立于语言的文本格式(跨平台数据格式)不依赖于任何语言、有结构的、方便人和机器解析使用场景: 1):不同语言之间的数据传递(Json的本质就是String,但是它是有格式的...原创 2018-05-19 21:26:48 · 13792 阅读 · 1 评论 -
java程序执行过程的 运行时数据的内容
java程序执行过程以及程序执行过程的 Runtime Data Area(运行时数据)的五大内容Java程序的执行过程: Java源代码文件(.java)→→ Java Compiler(java编译器)→→Java字节码(.class文件)→→类加载器加载(Class Loader)→→Run Data Area(运行时数据)→→Execution Engine(执行引擎)运行时数...原创 2018-06-12 11:16:47 · 1283 阅读 · 0 评论 -
java反射思想以及工厂设计模型(一)
反射实例化Class类对象 所谓的框架开发 :本质就是==Java可重用性设计思想+反射机制+XML配置(Annotation配置)1.Class类: Class是一切反射的源头,但是如果要想取得Class类的对象,在java中存在有三种做法: 1.利用Object类中的getClass()方法: 方法:public final Class<?> getCla...原创 2018-06-13 10:00:14 · 376 阅读 · 0 评论 -
Redis集群架构概述(五)
Redis集群架构概述单实例Redis问题分析 首先Redis是一个缓存数据库,而且可以承受每秒10w的访问量,同时Redis数据库还可以将数据进行持久化存储,这样即使在Redis关闭之后数据也可以被保存下来。 但是除了这些基本知识之外,在整个系统的开发架构之中,Redis也有着非常重要的地位。应用场景: 在进行web项目开发的时候,为了保证性能高效,往往会使用大量的web服...原创 2018-06-23 10:44:46 · 380 阅读 · 0 评论 -
Redis数据分片处理(六)
Redis分片处理(twemproxy代理机制)代理组件:twemproxy 不管你现在的电脑性能有多好,只要你运行了Redis,那么就有可能造成一种可怕的局面,你电脑的内存将立刻被占满。而且一台Redis数据库的性能终归是有限制的,那么现在如果要保证用户的执行速度快,就需要使用集群的设计。而对于集群的设计,主要的问题就是解决单实例Redis的性能瓶颈。twemproxy代理机制 T...原创 2018-06-30 13:12:55 · 3558 阅读 · 0 评论 -
java基础常见问题解析
java常见问题- finally和return执行流程代码:public class TryCatchFinally { // 测试try catch finally 流程 public void demo01(){ try{ System.out.println("try............."); ...原创 2018-05-11 23:54:59 · 484 阅读 · 0 评论