随笔分类 -  java基础

摘要:语法糖 接下来几篇文章要开启一个Java语法糖系列,所以首先讲讲什么是语法糖。语法糖是一种几乎每种语言或多或少都提供过的一些方便程序员开发代码的语法,它只是编译器实 现的一些小把戏罢了,编译期间以特定的字节码或者特定的方式对这些语法做一些处理,开发者就可以直接方便地使用了。这些语法糖虽然不会提供实质 阅读全文
posted @ 2016-05-18 11:47 IT·达人 阅读(1405) 评论(0) 推荐(1)
摘要:反射的作用 Java反射描述的是,在运行状态中: 1、对于任意一个类,都能够知道这个类的所有属性和方法 2、对于任意一个类,都能够调用它的任意一个属性和方法 之所以强调属性、方法,是因为属性、方法是开发者对于一个类最关注的两个部分。实际上通过反射,不仅仅可以获知类的属性、方法,还可以获知类的父类、接 阅读全文
posted @ 2016-05-18 11:46 IT·达人 阅读(245) 评论(0) 推荐(0)
摘要:为什么要克隆 为什么要使用克隆,这其实反映的是一个很现实的问题,假如我们有一个对象: public class SimpleObject implements Cloneable { private String str; public SimpleObject() { System.out.pri 阅读全文
posted @ 2016-05-18 11:45 IT·达人 阅读(3011) 评论(0) 推荐(2)
摘要:WeakReference弱引用概述 http://www.cnblogs.com/xrq730/p/4836700.html,关于Java的四种引用状态具体请参看此文 Java里一个对象obj被创建时,被放在堆里。当GC运行的时候,发现没有任何引用指向obj,那么就会回收obj对象的堆内存空间。 阅读全文
posted @ 2016-05-18 11:45 IT·达人 阅读(9849) 评论(0) 推荐(0)
摘要:Class.forName(String name) 接上一篇JDBC。本来这个内容是放在前面的一篇里面的一起的,后来发现越写越多,想想看就算了,还是单独开一篇文章好了,这样也能写得更加详细点。 上一篇文章的第4点,getConnection()方法里面,我把从.properties里面获取mysq 阅读全文
posted @ 2016-05-18 11:44 IT·达人 阅读(491) 评论(0) 推荐(0)
摘要:什么是JDBC JDBC(Java Database Connectivity),即Java数据库连接,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供同一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,根据这种基准可以构建更高级的工具和接 口,使数据库开 阅读全文
posted @ 2016-05-18 11:43 IT·达人 阅读(626) 评论(1) 推荐(1)
摘要:前言 Object提供给我们了一个Native的方法“public native int hashCode();”,本文讲讲Hash是什么以及HashCode的作用 Hash 先用一张图看下什么是Hash Hash是散列的意思,就是把任意长度的输入,通过散列算法变换成固定长度的输出,该输出就是散列值 阅读全文
posted @ 2016-05-18 11:41 IT·达人 阅读(9730) 评论(0) 推荐(1)
摘要:为什么要自定义类加载器 类加载机制:http://www.cnblogs.com/xrq730/p/4844915.html 类加载器:http://www.cnblogs.com/xrq730/p/4845144.html 这两篇文章已经详细讲解了类加载机制和类加载器,还剩最后一个问题没有讲解,就 阅读全文
posted @ 2016-05-18 11:41 IT·达人 阅读(18837) 评论(7) 推荐(3)
摘要:前言 有这么一段代码: 运行结果是什么?答案当然是true。对,答案的确是true,但是这是为什么 呢?很多人第一反应肯定是两个"123"的String当然相等啊,这还要想。但是"=="在Java比较的根本不是两个对象的值,而是比较两个对象的引 用是否相等,和两个String都是"123"又有什么关 阅读全文
posted @ 2016-05-18 11:40 IT·达人 阅读(444) 评论(0) 推荐(1)
摘要:前言 之前一篇文章在写Native方法的时候,第一个步骤里面有这么一段代码 static { System.load("D:" + File.separator + "Hello.dll"); } static { System.load("D:" + File.separator + "Hello 阅读全文
posted @ 2016-05-18 11:39 IT·达人 阅读(1952) 评论(0) 推荐(0)
摘要:JNI 开始本篇的内容之前,首先要讲一下JNI。Java很好,使用的人很多、应用极 广,但是Java不是完美的。Java的不足体现在运行速度要比传统的C++慢上许多之外,还有Java无法直接访问到操作系统底层如硬件系统,为此 Java提供了JNI来实现对于底层的访问。JNI,Java Native 阅读全文
posted @ 2016-05-18 11:37 IT·达人 阅读(15586) 评论(6) 推荐(14)
摘要:平时我们在Java内存中的对象,是无 法进行IO操作或者网络通信的,因为在进行IO操作或者网络通信的时候,人家根本不知道内存中的对象是个什么东西,因此必须将对象以某种方式表示出来,即 存储对象中的状态。一个Java对象的表示有各种各样的方式,Java本身也提供给了用户一种表示对象的方式,那就是序列化 阅读全文
posted @ 2016-05-18 10:00 IT·达人 阅读(28620) 评论(0) 推荐(11)
摘要:上一篇文章讲到了使用Java原生的序列化的方式来表示一个对象。总结一下这种对象表示方式的优缺点: 1、纯粹的Java环境下这种方式可以很好地工作,因为它是Java自带的,也不需要第三方的Jar包的支持 2、多语言环境下,使用Java序列化方式进行存储后,很难用其他语言还原出结果 3、占用的字节数比较 阅读全文
posted @ 2016-05-18 10:00 IT·达人 阅读(270) 评论(0) 推荐(0)
摘要:前言 一直想写写这个话题。代表公司也面试过一些求职者,每次面试我必问的两个问题之一 就是“请你谈一谈对于final关键字的理解”。这是一个简单的小问题,但是不要小看它,通过对这个问题的回答以及一些简单的扩展就能看出一个求职者的基 础是否扎实以及是否有钻研精神。OK,开始进入主题。 final关键字的 阅读全文
posted @ 2016-05-18 09:46 IT·达人 阅读(738) 评论(0) 推荐(0)
摘要:概述 我们都知道面向对象有四个基本特性:抽象、封装、继承、多态。这四个特性,概括起来可以这么理解,抽象、封装、继承是多态的基础,多态是抽象、封装、继承的表现。多态,是Java中非常重要的一个部分,所以今天来谈一下多态(Polymorphism)。 什么是多态 不同类的对象对同一消息作出不同的响应就叫 阅读全文
posted @ 2016-05-18 09:45 IT·达人 阅读(332) 评论(0) 推荐(2)