JAVA基础知识
文章平均质量分 60
lijieshare
这个作者很懒,什么都没留下…
展开
-
【java反射之动态属性赋值】
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制 核心代码如下:package demo.tt; import java.lang.reflect.Field; public class ReflectD...2016-05-18 23:24:20 · 157 阅读 · 0 评论 -
【关于线程7种同步方式】
1、锁的原理Java中每个对象都有一个内置锁当程序运行到非静态的synchronized同步方法上时,自动获得与正在执行代码类的当前实例(this实例)有关的锁。获得一个对象的锁也称为获取锁、锁定对象、在对象上锁定或在对象上同步。当程序运行到synchronized同步方法或代码块时才该对象锁才起作用。 一个对象只有一个锁。所以,如果一个线程获得该锁,就没有其他线程可以获得锁...2017-10-29 18:57:42 · 117 阅读 · 0 评论 -
【 Java虚拟机工作原理详解】
宏观上介绍一下Java虚拟机的工作原理。从最初的我们编写的Java源文件(.java文件)是如何一步步执行的,如下图所示,首先Java源文件经过前端编译器(javac或ECJ)将.java文件编译为Java字节码文件,然后JRE加载Java字节码文件,载入系统分配给JVM的内存区,然后执行引擎解释或编译类文件,再由即时编译器将字节码转化为机器码。主要介绍下图中的类加载器和运行时数据区两个部分。...2017-09-07 20:48:39 · 144 阅读 · 0 评论 -
【JVM、JRE和JDK的区别与联系】
JDK(Java Development Kit)简单理解就是Java开发工具包,JRE(Java Runtime Enviroment)是Java的运行环境,JVM( java virtual machine)也就是常常听到Java虚拟机。JDK是面向开发者的,JRE是面向使用JAVA程序的用户 JVM体系结构与运行原理:Java语言写的源程序通过Java编译器,编译成与平台无关的...2017-08-29 20:55:41 · 97 阅读 · 0 评论 -
【hashCode() 和equals() 区别和作用】
Object类中默认的实现方式是 : return this == obj 。那就是说,只有this 和 obj引用同一个对象,才会返回true。而我们往往需要用equals来判断 2个对象是否等价,而非验证他们的唯一性。这样我们在实现自己的类时,就要重写equals. 按照约定,equals要满足以下规则。自反性: x.equals(x) 一定是true...2017-08-22 20:49:59 · 103 阅读 · 0 评论 -
【JAVA EE之基础面试题】
永久链接: http://gaojingsong.iteye.com/blog/2386483预览文章: 【JAVASE基础面试题】 1、网络编程(Socket/DatagramSocket/ServerSocketChannel )Socket通信的步骤 ① 创建ServerSocket和Socket ② 打开连接到Socket的输入/输出流 ③ 按照协议对S...2017-08-11 21:08:36 · 134 阅读 · 0 评论 -
【理解Keystone的四种Token】
通俗的讲,token 是用户的一种凭证,需拿正确的用户名/密码向 Keystone 申请才能得到。如果用户每次都采用用户名/密码访问 OpenStack API,容易泄露用户信息,带来安全隐患。所以 OpenStack 要求用户访问其 API 前,必须先获取 token,然后用 token 作为用户凭据访问 OpenStack API。 UUID类型D 版本时,仅有 UUID 类型的 ...2017-07-26 22:39:23 · 232 阅读 · 0 评论 -
【JAVASE基础面试题】
1、编写多线程程序有几种实现方式? 2、简述一下面向对象的”六原则一法则”。 3、描述一下JVM加载class文件的原理机制? 4、重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分? 5、阐述final、finally、finalize的区别。 6、Java 中会存在内存...2017-07-23 13:59:06 · 108 阅读 · 0 评论 -
【J2EE中的13种技术】
J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的13种技术规范进行简单的描述(限于篇幅,这里只能进行简单的描述):1:JDBC(Java Database Connectivity)JDBC API为访问不同数据库提供了统一的路径,像ODBC一样,JDBC开发者屏蔽了一些细节问题,另外,JD...2017-07-15 10:00:27 · 280 阅读 · 0 评论 -
【Java混淆器】
前有许多Java反编译工具可以把(*.class)文件反编译出(*.java)文件.如果你花大量时间开发一个Java软件,而别人只 需利用Java反编译工具进行反编译,就可以既轻松又清楚的看见你的源代码.如果你不想把你的代码公开,又害怕被别人反编译,请使用我们开发的《Java混淆器》.使用我们的《Java混淆器》,只需要选定目录后轻轻点一下执行按钮,就可以 自动加密源代码.你只需再把加密后的源码...2017-07-02 23:00:31 · 189 阅读 · 0 评论 -
【java 面试题之1+1在什么情况下不等于2 ?】
故事的起源:网上看到一个笑话: 1+1在什么情况下不等于2 ? 最简单的答案是1+1 在算错的情况下,不等于2 ,其实1+1在算对的情况下也未必等于2 原因解释: 在 Java 5 中,为 Integer 的操作引入了一个新的特性,用来节省内存和提高性能。 整型对象在内部实现中通过使用相同的对象引用实现了缓存和重用。 上面的规则适用于整数区间 -128 到 +12...2016-10-20 19:52:07 · 1081 阅读 · 0 评论 -
Java集合框架基础知识
1、Java集合框架的基础接口有哪些? Collection为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java平台不提供这个接口任何直接的实现。 Set是一个不能包含重复元素的集合。这个接口对数学集合抽象进行建模,被用来代表集合,就如一副牌。 List是一个有序集合,可以包含重复元素。你可以通过它的索引来访问任何元素。List更像长度动态变换的数组。...2016-09-16 21:32:43 · 115 阅读 · 0 评论 -
【JAVA跨语言调用C++程序的小实验】
JAVA 调用C++步骤如下:1) 首先在java类中声明native方法2) 使用javah 命令生成包含native方法声明的C/C++头文件3) 按照生成的C/C++头文件开始编写C/C++源文件4) 将C/C++源文件编译为动态链接库(DLL)5) 把DLL文件加入到项目的ClassPath中去6) JAVA类中调用加载DLL,然后调用声明的native方法...2016-08-14 20:53:36 · 134 阅读 · 0 评论 -
【java中的泛型知多少】
一、泛型简介这道泛型题目,估计百分之九十的java程序员都会打错,泛型是个什么东西呢?泛型题目请看图片附件。泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。在Java SE 1.5之前,没有泛型的情况的下,通...2016-08-08 21:09:44 · 91 阅读 · 0 评论 -
【反射的应用场景(一)】
一、应用场景Redis缓存系统中使用Json字符串中存储一些缓存信息,减少数据库压力。但是数据库可能会定时更新,数据库只有只读权限,没法知道哪些数据库更新了,一种解决方案:定期遍历数据库数据,覆盖缓存,特点是快,缺点是没法知道哪些数据更新了 第二种解决方案:数据库中遍历的值和缓存系统的值进行比较,记录变化数据,此时可以使用数据库作为外层循环或者使用缓存系统作为外层循环,缺点是慢,优点是知...2016-07-28 20:49:14 · 128 阅读 · 0 评论 -
哲学家就餐问题
问题描述:哲学家就餐问题可以这样表述,假设有五位哲学家围坐在一张圆形餐桌旁,做以下两件事情之一:吃饭,或者思考。吃东西的时候,他们就停止思考,思考的时候也停止吃东西。餐桌中间有一大碗意大利面,每两个哲学家之间有一只餐叉。因为用一只餐叉很难吃到意大利面,所以假设哲学家必须用两只餐叉吃东西。他们只能使用自己左右手边的那两只餐叉。哲学家就餐问题有时也用米饭和筷子而不是意大利...2016-06-21 20:52:37 · 100 阅读 · 0 评论 -
【jar命令的用法详解】
JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。JAR包是由JDK安装目录\bin\jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib\tool.jar工具包中的类。这些细节就不用管它了。...2017-12-31 19:59:56 · 175 阅读 · 0 评论