java基础
文章平均质量分 69
dyf20081124
这个作者很懒,什么都没留下…
展开
-
jvm内存结构
一、jvm内存结构程序计数器(Program Counter Register)、JVM虚拟机栈(JVM Stacks)、本地方法栈(Native Method Stacks)、堆(Heap)、方法区(Method Area)(1)PCR跟随线程生命周期,记录当前执行到的.class字节码行数,用于多线程操作(2)JVM Stacks跟随线程生命周期,在方法执行中存储数转载 2014-05-04 15:49:52 · 326 阅读 · 0 评论 -
Head First Java 十 十一
第十章 Swing使用上章看到的所有小东西,小widget,都应叫做component,组件,都继承自javax.swing.JComponent包。在Swing中,几乎所有的组件,都是能够嵌套的。但一般是把小组件,嵌到一个大的比如panel上,然后嵌入frame。但是,如果你非要把panel,嵌到一个button里,也是可以的。谁来做交互组件,谁来当背景都是人转载 2014-08-18 15:31:38 · 531 阅读 · 0 评论 -
Head First Java 六 七
第六章 构造函数 和GC (实际已是书的第九章了)堆和栈本地变量,和函数的调用都存在于Stack上,而对象的申请,都存活于Heap上。正在运行的函数,处在栈的顶端。如果一个函数的本地变量是个引用,然后申请了一个对象,让该引用去指向,那么这个引用存活于栈上,而其引用的对象,存活于Heap上。注意:对象总存在于堆上,不管它的引用在哪里。注转载 2014-08-18 15:29:36 · 312 阅读 · 0 评论 -
Head First Java 三 四 五
术语规定A method uses parameters. A caller passers arguments.这么规定是有原因的,也是为了区分parameters 和 arguments的不同,即传值调用是复制一份参数传出去。java中,全部都是传值调用,即复制一份参数,传给函数。reference引用也是传值的,传的是遥控器的bits。转载 2014-08-18 15:32:11 · 318 阅读 · 0 评论 -
在Linux中jdk环境变量的配置
1.首先vi /etc/profile2.在文件中原创 2014-08-28 14:40:54 · 258 阅读 · 0 评论 -
Head First Java 一 二章
第一章 java简介java四过程:source(XXX.java) -> 编译 -> bytecodes (XXX.class) -> JVM 上运行。一个java程序至少有一个class,并且一个程序有且只有一个main method。典型Hello world程序public class FirstJavaApp { p转载 2014-08-18 15:29:16 · 373 阅读 · 0 评论 -
Head First 十二 十三
第十二章 网络和线程客户机方面从Socket读数据:这时候java 流的分层设计就体现出优势了。典型步骤为:1、Socket chatSocket = new Socket("127.0.0.1", 5000);建立Socket,127.0.0.1是表示localhost,即是本机。5000是端口。2、InputStreamReader st转载 2014-08-18 15:34:46 · 410 阅读 · 0 评论 -
Set和List 的关系与区别
两个接口都是继承自Collection. List (inteface) 次序是List 的最重要特点,它确保维护元素特定的顺序. --ArrayList 允许对元素快速随机访问. --LinkedList 对顺序访问进行优化,向List 中间插入与移除的开销并不大,具有addFrist(),addLast(),getFirst,getLast,removeFirst和re转载 2014-08-19 13:59:34 · 413 阅读 · 0 评论 -
Head First Java 八 九
第八章 异常处理try { // do risky thing} catch (Exception ex) { // try to recover}大部分时间都在处理异常,而不是抛异常,那怎么抛呢。1、Risky , exception-throwing code: public void takeRisk() thr转载 2014-08-18 15:26:47 · 433 阅读 · 0 评论 -
Java:按值传递还是按引用传递详细解说
前天在做系统的时候被Java中参数传递问题卡了一下,回头查阅了相关的资料,对参数传递问题有了新的了解和掌握,但是有个问题感觉还是很模糊,就是Java中到底是否只存在值传递,因为在查阅资料时,经常看到有人说Java只有值传递,但有人说既有值传递,也有引用传递,对于两个观点个人觉得应该是站的角度不同而得出两个不同的说法,其实两个说法其中的原理是一样的,只要咱们懂得其中的原理,那么至于叫什么也就无所谓了转载 2014-09-03 11:12:02 · 262 阅读 · 0 评论 -
Java中throw和throws的区别
系统自动抛出的异常所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行。 语句抛出的异常 用户程序自定义的异常和应用程序特定的异常,必须借助于 throws 和 throw 语句来定义抛出异常。throw是语句抛出一个异常。语法:throw (异常对象);转载 2014-10-27 20:04:10 · 291 阅读 · 0 评论 -
Eclipse下的RMI编程
现在Eclipse使用的比较多,而其功能的可扩展性也是超级强大,可以将多种工具和开发技术通过插件包的形式融合进来。这里说一下怎么通过RMI Plugin在Eclipse里面调试RMI程序。一、准备安装包 Eclipse的下载地址这里就不说了。这里提供RMI Plugin for Eclipse 的下载地址: http://www.genady.net/rmi/转载 2014-08-18 16:35:06 · 308 阅读 · 0 评论 -
Head First Java 十四 至 终章
第十四章 发布你的代码分离.java 和 .class文件没用IDE的话,编译好的文件和源码文件,是在同一个文件夹下的,会非常乱。手动分离会非常麻烦。$cd MyProject/source 首先进入source文件夹$javac -d ../classes MyApp.java然后编译源文件,到../classes文件夹下,-d用转载 2014-08-18 15:36:20 · 470 阅读 · 0 评论 -
Hash和ArrayList的区别
HashSet在存储和取出数据时是无序的(也不是无序的,是根据HashMap来的),这就是能解释为什么HashSet不能存储相同的数据的出发点。打个比方,在一群排列不齐混乱的人中,要一个叫A的人出来,于是就叫“A,请出来一下”,这时很有可能有2个甚至更多的人也叫A,就不知道哪个A该出来。所以HashSet中是不存在相同数据的。 而对于ArrayList而言,ArrayList就可以存储相原创 2014-05-04 15:35:23 · 439 阅读 · 0 评论 -
java字体设置,包括大小,颜色,加粗,下划线,对齐,斜体的设置
import java.awt.BorderLayout; import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JEditorPane; im转载 2014-05-04 21:38:10 · 1756 阅读 · 0 评论 -
HashMap的工作原理
HashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道HashTable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMap来考察你的编程能力。ConcurrentHashMap和其它同步集合的引入转载 2014-04-18 18:08:47 · 298 阅读 · 0 评论 -
Java中equal和"=="的区别
注:本文参考自:http://www.cnblogs.com/zhxhdean/archive/2011/03/25/1995431.html我在复习Java EE的时候写了一个非常简单的Servlet,只要从前台获取用户名和密码,在Servlet进行比较后得到验证结果并输出到前端。其中servlet的代码一部分为:if(userName == "caixiaorang"转载 2014-05-05 21:36:16 · 327 阅读 · 0 评论 -
CocurrentHashMap和Hashtable的区别
集合类是Java API的核心,但是我觉得要用好它们是一种艺术。我总结了一些个人的经验,譬如使用ArrayList能够提高性能,而不再需要过时的Vector了,等等。JDK 1.5引入了一些好用的并发集合类,它们对于大型的、要求低延迟的电子商务系统来说非常的有用。这篇文章中将会看看ConcurrentHashMap和Hashtable之间的区别。这篇文章是HashMap的工作原理以及Has转载 2014-04-18 18:07:21 · 302 阅读 · 0 评论 -
java+内存分配及变量存储位置的区别
Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域: ◆寄存器:我们在程序中无法控制 ◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中(new 出来的对象)转载 2014-05-12 21:57:14 · 300 阅读 · 0 评论 -
Java中static成员的用法
(一)什么情况下我们要使用static呢? 1、只想用一个存储区域来保存一个特定的数据——无论要创建多少个对象,甚至根本不创建对象。2、我们需要一个特殊的方法,它没有与这个类的任何对象关联。也就是说,即使没有创建对象,也需要一个能调用的方法。(二)static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语转载 2014-05-12 21:54:25 · 333 阅读 · 0 评论 -
synchronized 学习(一)
1、synchronized关键字的作用域有二种: 1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中的一个synchronized方法,其它线程不能同时访问这个对象中任何一个synchronized方法)。这时,不同的对象实例的synchr转载 2014-05-22 21:57:48 · 256 阅读 · 0 评论 -
Java异常的分类
被架构师问的面试题1. 异常机制 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。 传统的处理异常的办法是,函数返回一个特殊的结果来表示出现异常(通常这个特殊结果是大家约定俗称的),调用该函数的程序负责检查并分析函数返回的结果。这样做有如下的弊端:例如函转载 2014-07-31 10:42:16 · 230 阅读 · 0 评论 -
JAVA 的checked异常和unchecked异常
原文地址:的checked异常和unchecked异常" style="text-decoration:none; color:rgb(0,102,204)">JAVA 的checked异常和unchecked异常作者:macg什么是unchecked异常?即RuntimeException(运行时异常)不需要try...catch...或throws 机制去处理的异常转载 2014-07-31 14:21:06 · 267 阅读 · 0 评论 -
java中equal和==的比较
java中equals方法和“==”的区别: equals 方法是 java.lang.Object 类的方法。 有两种用法说明: (1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。 “==”比较两个变量本身的值,即两个对象在内存中的首地址。 “equals()”比较字符串中所包含的内容是否相同。 比如:转载 2014-11-18 19:39:25 · 315 阅读 · 0 评论