![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
lrx之成长记录
这个作者很懒,什么都没留下…
展开
-
Java基础之虚拟机底层结构解读
在以前的博客里面,我们介绍了在java领域中大部分的知识点,从最基础的java最基本语法到SSH框架。这里面应该包含了在java领域里面的大部分内容了吧。但是,那些知识点是让我们从一个应用的层面上了解了java,java程序真正底层的运行机制和一些底层虚拟机的工作我们还不了解,虽然这些内容在我们真正的开发中几乎用不到这些底层的东西,但对于我们对java的理解会有比较大的帮助。尤其也对以后java开转载 2012-09-05 15:12:39 · 933 阅读 · 0 评论 -
Java中单例模式和静态类的区别
单例模式与静态类(一个类,所有方法为静态方法)是另一个非常有趣的问题,由于单例模式和静态类都具有良好的访问性,它们之间有许多相似之处,例如,两者可以直接使用而无须创建对象,都可提交唯一实例,在一个非常高的高度上看起来它们都为是用于同样的任务。由于它们具有较多的相似性,面试官常常会问一些类似为神马使用单例模式替换静态方法?你能使用静态类替换单例模式吗?Java中单例模式与静态的区别有那些?等这样的问转载 2015-03-04 18:32:51 · 3637 阅读 · 0 评论 -
Java基础之集合类
JAVA集合类(大公司面试喜欢问的) IT宅男 2014.04.28 23:33 2391 字 972 次阅读看了一些所谓大公司的JAVA面试问题,发现对于JAVA集合类的使用都比较看重似的,而自己在这方面还真的是所真甚少,抽空也学习学习吧。java.util包中包含了一系列重要的集合类,而对于集合类,主要需要掌握的就是它的内部结构,以及遍历集合的迭代模式。转载 2015-03-04 09:11:00 · 2991 阅读 · 0 评论 -
Java基础之线程同步与锁
51CTO首页51CTO博客我的博客搜索每日博报社区:学院论坛博客下载更多登录注册熔 岩http://lavasoft.blog.51cto.com【复制】 【订阅】原创:623翻译:4转载:0博 客|图库|写博文|帮 助首页|J2SE|J2EE|Servlet/JSP|Sp原创 2014-06-25 10:35:23 · 3339 阅读 · 0 评论 -
Java基础之抽象类与接口
很多常见的面试题都会出诸如抽象类和接口有什么区别,什么情况下会使用抽象类和什么情况你会使用接口这样的问题。本文我们将仔细讨论这些话题。在讨论它们之间的不同点之前,我们先看看抽象类、接口各自的特性。抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。以JDK中的GenericServlet为例:转载 2014-07-16 09:20:31 · 4213 阅读 · 0 评论 -
Java实现定时任务的三种方法
普通thread实现TimerTask实现ScheduledExecutorService实现普通thread这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。这样可以快速简单的实现,代码如下:public class Task1 {public static void main(S转载 2014-04-10 09:38:49 · 3830 阅读 · 0 评论 -
Java字符串之性能优化
基础类型转化成String在程序中你可能时常会需要将别的类型转化成String,有时候可能是一些基础类型的值。在拼接字符串的时候,如果你有两个或者多个基础类型的值需要放到前面,你需要显式的将第一个值转化成String(不然的话像System.out.println(1+'a')会输出98,而不是"1a")。当然了,有一组String.valueOf方法可以完成这个(或者是基础类型对应的包装类的转载 2014-03-24 09:38:39 · 2680 阅读 · 0 评论 -
JAVA反射机制
Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来。 Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C 或者 C++ 中就没有办法在程序中获得函数定义相关的信息。Jav转载 2014-03-21 16:51:03 · 739 阅读 · 0 评论 -
Java线程与多线程教程
Java线程是执行某些任务的轻量级进程。Java通过Thread类提供多线程支持,应用可以创建并发执行的多个线程。 应用中有两类线程——用户线程和守护线程。当启动应用时,main线程是创建的第一个用户线程,我们可以创建多个用户线程和守护线程。当所有用户进程执行完毕时,JVM终止程序。 可以对不同的线程设置不同的属性,但并不保证高优先级的线程在低优先级线程之前执行。线程调度器是操作系统的部分实现,当转载 2014-03-14 10:54:02 · 744 阅读 · 0 评论 -
Java基础之内部类
提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了解,你会发现Java的原创 2013-12-19 15:18:10 · 866 阅读 · 0 评论 -
Java基础之protected访问权限
来谈谈protected访问权限问题。看下面示例1:Test.javaclass MyObject {} publicclass Test { publicstaticvoid main(String[] args) { MyObject obj = new MyObject(); obj.clone(); //转载 2013-12-19 11:09:24 · 856 阅读 · 0 评论 -
Java基础之JNI实现
Jvm封装了各种操作系统实际的差异性的同时,提供了jni技术,使得开发者可以通过java程序(代码)调用到操作系统相关的技术实现的库函数,从而与其他技术和系统交互,使用其他技术实现的系统的功能;同时其他技术和系统也可以通过jni提供的相应原生接口开调用java应用系统内部实现的功能。 JNI是JAVA标准平台中的一个重要功能,它弥补了JAVA的与平台无关这一重大优点的不足,在JA转载 2013-12-31 11:14:08 · 804 阅读 · 0 评论 -
Java基础之构造器Constructor
构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。构造器用来确保每个对象都会得到初始化。当对象被创建时,如果该类具有构造器,java就会在用户有能力操作对象之前自动调用相应的构造器,所以保证了初始化地进行。在java中创建和初始化被捆绑在了一起,两者不能分离。注意构造器没有返回值,与返回值为空(void)明显不同。如果不想被实例化,可转载 2013-12-13 11:04:39 · 908 阅读 · 0 评论 -
Java基础之内存回收机制
一、Java对象在内存引用状态 内存泄露:程序运行过程中,会不断分配内存空间,那些不再使用的内存空间应该即时回收它们,从而保证系统可以再次使用这些内存,如果存在无用的内存没有被回收回来,这就是内存泄漏。 (1)强引用 这是java程序中最常见的引用方式,程序创建一个对象,并把这个对象赋给一个引用变量,这个引用变量就是强引用。java程序可通过强引用来访问实际的对象。当一个对象被一转载 2013-12-04 16:10:25 · 685 阅读 · 0 评论 -
Java基础之多线程问题
很多核心Java面试题来源于多线程(Multi-Threading)和集合框架(Collections Framework),理解核心线程概念时,娴熟的实际经验是必需的。这篇文章收集了 Java 线程方面一些典型的问题,这些问题经常被高级工程师所问到。0.Java 中多线程同步是什么?在多线程程序下,同步能控制对共享资源的访问。如果没有同步,当一个 Java 线程在修改一个共享变量时,另外转载 2012-06-12 12:01:05 · 409 阅读 · 0 评论 -
Java基础之try 与catch的使用
try{//代码区}catch(Exception e){//异常处理}代码区如果有错误,就会返回所写异常的处理。 首先要清楚,如果没有try的话,出现异常会导致程序崩溃。而try则可以保证程序的正常运行下去,比如说:try{int i = 1/0;}catch(Exception e){........}一个计算的话,如果除数为0,则会报错转载 2012-06-12 11:58:52 · 453 阅读 · 0 评论 -
Java基础之调用系统命令或可执行程序
通过 java.lang.Runtime 类可以方便的调用操作系统命令,或者一个可执行程序,下面的小例子我在windows和linux分别测试过,都通过。基本原理是,首先通过 Runtime.getRuntime() 返回与当前 Java 应用程序相关的运行时对象,然后调用run.exec(cmd) 另启一个进程来执行命令(cmd为要执行的命令)。 一、运行一个可执行程序 执行原创 2012-10-24 14:26:54 · 658 阅读 · 0 评论 -
Java基础之并发编程:Lock
在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。 也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐述。本文先从synchroni转载 2017-12-29 11:19:47 · 1668 阅读 · 0 评论