JAVA
文章平均质量分 52
ITofwan
天行健,君子以自强不息;地势坤,君子以厚德载物!
展开
-
Statement和PreparedStatement的区别
一、连接各种数据库方式速查表 下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用。 1、Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url="jdbc:oracle:thin转载 2014-10-10 09:50:08 · 538 阅读 · 0 评论 -
java 字节流与字符流的区别
字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如图12-6所示。下面以两个写文件的操作为主进行比较,但是在操作时字节流和字符流的操作完成之后都不关闭输出流。范例:使用字节流不关闭执行Java代码转载 2014-08-01 17:02:54 · 599 阅读 · 0 评论 -
java线程安全问题之静态变量、实例变量(类变量)、局部变量
java多线程编程中,存在很多线程安全问题,至于什么是线程安全呢,给出一个通俗易懂的概念还是蛮难的,如同《java并发编程实践》中所说:写道给线程安全下定义比较困难。存在很多种定义,如:“一个类在可以被多个线程安全调用时就是线程安全的”。 此处不赘述了,首先给出静态变量、实例变量、局部变量在多线程环境下的线程安全问题结论,然后用示例验证,请大家擦亮眼睛,有错必究,否则转载 2014-08-07 13:20:17 · 756 阅读 · 0 评论 -
新式java的for循环
import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class ForTest{ public static void main(String args[]) { //测试数字数组 int arr[] = {1, 2, 3, 4, 5, 6, 7,转载 2014-07-02 09:32:46 · 735 阅读 · 0 评论 -
java-折半查找算法(两种程序形式)
class HalfSearchTest //定义折半查找测试类{public static void main(String[] args) //定义测试方法main{int[] a={1,3,5,6,7,8,9}; //定义测试方法数组System.out.println(HalfSearch_1(a,3)); //原创 2014-06-03 18:29:37 · 742 阅读 · 0 评论 -
你了解System.out.println()的真正含义吗?
在Java编程中,我们常常用System.out.println()方法来输出字符串,也许我们都已经猜到println()是方法名,但System是什么,out又是什么呢?这里就涉及用到一个static关键字。如下图,其实System是java.lang里面的一个类。 而out就是System里面的一个数据成员(也称为字段),但这个成员不是基本类,而是jav转载 2014-06-03 18:34:27 · 902 阅读 · 0 评论 -
Java中的for循环
for循环是开界的。它的一般形式为: for(; ; ) 语句; 初始化总是一个赋值语句, 它用来给循环控制变量赋初值; 条件表达式是一个关系表达式, 它决定什么时候退出循环; 增量定义循环控制变量每循环一次后 按什么方式变化。这三个部分之间用";"分开。 例如: for(i=1; i10时, 结束循环。 注意: 1. for循环中语句可以为语句体, 但要用"{"和"}"将参加转载 2014-07-02 09:14:56 · 435 阅读 · 0 评论 -
Java集合框架的知识总结(1)
说明:先从整体介绍了Java集合框架包含的接口和类,然后总结了集合框架中的一些基本知识和关键点,并结合实例进行简单分析。 1、综述 所有集合类都位于java.util包下。集合中只能保存对象(保存对象的引用变量)。(数组既可以保存基本类型的数据也可以保存对象)。 当我们把一个对象放入集合中后,系统会把所有集合元素都当成Object类的实例进行处转载 2014-07-04 15:00:07 · 622 阅读 · 0 评论 -
Java集合框架总结(2)——Set接口的使用
1、Set接口的使用 Set集合里多个对象之间没有明显的顺序。具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection方法相同。只是行为不同(Set不允许包含重复元素)。 Set集合不允许重复元素,是因为Set判断两个对象相同不是使用==运算符,而是根据equals方法。即两个对象用equals方法比较返回true,Set就不能接受两个转载 2014-07-04 15:01:37 · 418 阅读 · 0 评论 -
方法覆盖
1、子类方法的名称、参数签名和返回类型必须与父类方法的名称、参数签名和返回类型一致2、子类方法不能缩小父类方法的访问权限3、子类方法不能抛出比父类方法更多的异常4、方法覆盖只存在于子类和父类之间。在同一个类中方法只能被重载,不能被覆盖5、父类的静态方法不能被子类覆盖为非静态方法6、子类可以定义与父类的静态方法同名的静态方法,以便在子类中隐藏父类的静态方法原创 2014-07-12 11:38:57 · 1120 阅读 · 0 评论 -
Java学习之多态
Java学习之多态多态的概念 多态==晚绑定。 不要把函数重载理解为多态。 因为多态是一种运行期的行为,不是编译期的行为。 多态:父类型的引用可以指向子类型的对象。 比如 Parent p = new Child(); 当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误; 如果有,再去调用转载 2014-06-30 10:46:03 · 458 阅读 · 0 评论 -
异常中的特殊情况--RuntimeException类
如果在函数内容抛出该异常,函数上可以不用声明,调用者可以不用进行处理,编译一样通过(当然,也可以声明和处理)。之所以不用在函数声明,是因为不需要让调用者进行处理。当该异常发生时,希望程序停止。因为在运行时,出现了无法继续运算的情况,希望停止程序后,对代码进行修正。自定义异常时,如果该异常的发生,无法再继续进行运算,就让自定义异常继承RuntimeException.原创 2014-07-07 15:46:36 · 917 阅读 · 0 评论 -
Java IO(装饰者模式)
1、处理流的使用实例BufferedReader—字符输入处理流public String readline() throws IOException—读取1行数据BufferedReader in = new BufferedReader(new FileReader("foo.in"));例:读取整个文本import java.io.*;class转载 2014-08-01 13:27:33 · 559 阅读 · 0 评论 -
J2EE的13种核心技术
一、内容简介 Steven Gould在文中介绍了J2EE的13种核心技术:JDBC、JNDI、EJBs、RMI、JSP、Java Servlets、XML、JMS、Java IDL、JTS、JTA、JavaMail和JAF。为了联系实际,Gould基于WebLogic应用服务器来自BEA Systems公司的一种广为应用的产品环境来介绍J2EE的这些技术。 J转载 2014-07-31 09:32:43 · 600 阅读 · 1 评论 -
java 空字符串与null区别
java 空字符串与null区别 " "分配了内存 ;null没有 调用null的字符串的方法会抛空指针异常。 ""是一个字符串(String).它在内存中是存在的.它可以使用Object对象中的方法(如"".toString();"".equals()) 而null它是一个空对象.在内存中是不存在的.它不可以使用Object对象中的方法 ""占内存.. 在内存中会分配转载 2014-08-11 12:36:34 · 520 阅读 · 0 评论 -
关于JAVA中变量的初始化及类属性的默认值问题
先看两个例程:1.VariableInitialization.javapublic class VarialbleInitialization {public static void main(String args[]) {int x, y;y=x+1;System.out.println(y);}}利用JAVAC编译后提示:Variable x may n转载 2014-08-01 09:25:49 · 2609 阅读 · 0 评论 -
使用JDBC连接MySQL数据库详细步骤
使用JDBC连接数据看查询主要步骤如下: 1. 加载JDBC驱动程序; 2. 负责管理JDBC驱动程序的类 DriverManager 会识别加载的驱动程序,用 DriverManager 类的方法 getConnection()来创建一个数据库连接类的实例对象; 3. 获取Connection对象的实例,用Connection对象的方法创建一个 Statement 对象实例,执行标准转载 2014-10-10 10:24:17 · 785 阅读 · 0 评论 -
public static void main(String[] args)的理解!
/*public static void main(String[] args)public:权限修饰符,权限最大。static:随着MianDemo类的加载而加载,消失而消失。void: 没有返回值main: 函数名,jvm识别的特殊函数名(String[] args):定义了一个字符串数组参数*/clas转载 2014-10-10 11:44:20 · 2085 阅读 · 0 评论 -
JDBC连接MySQL 方法(封装方法,把增删改查操作封装在函数中)
准备工作 首先,安装MySQL,配置用户名和密码,创建数据库。 可参见之前的文章: http://www.cnblogs.com/mengdd/p/3154638.html http://www.cnblogs.com/mengdd/p/3154922.html 准备驱动包 要用JDBC连接MySQL,需要一个驱动包: 可转载 2014-09-18 17:07:35 · 1428 阅读 · 0 评论 -
如何从键盘录入数据调用排序算法排序?
如何从键盘录入数据调用排序算法排序? |--如何从键盘录入数据 |--如何用冒泡法排序原创 2014-08-15 12:21:47 · 1200 阅读 · 0 评论 -
java中byte数组和String字符串怎么相互转换?(string 转 byte[]和byte[] 转 string)
java中byte数组和String字符串怎么相互转换?(string 转 byte[]和byte[] 转 string)原创 2014-08-14 20:49:43 · 2351 阅读 · 0 评论 -
java中的基本数据类型和引用数据类型
java中的数据类型分为两大类:基本数据类型和引用数据类型基本数据类型,包括数值型,字符型和布尔型。数值型:1)整型:byte 1个字节;short 2个字节;int 4个字节;long 8个字节。 2)浮点型:float 4个字节;double 8个字节;可以采用十进制和十六进制两种表示方式,其中十六进制表示方法只能采用科学计数法,例如:0x1.2p3,表示转载 2014-08-14 21:47:32 · 895 阅读 · 0 评论 -
java中基本数据类型的包装类以及基本数据类型之间的转换
字符串与其他数据类型之间的转换原创 2014-08-14 21:27:19 · 3800 阅读 · 1 评论 -
JAVA语言编写的冒泡排序算法
JAVA语言编写的冒泡排序算法原创 2014-06-03 18:27:02 · 1968 阅读 · 0 评论 -
java.util.Scanner应用详解
java.util.Scanner应用详解 java.util.Scanner是Java5的新特征,主要功能是简化文本扫描。这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java API文档中列举了大量的API方法,但是都不怎么地。 一、扫描控制台输入 这个例子是常常会用到,但是如果没有Scanner,你写写就知道多难受了。转载 2014-08-14 21:40:04 · 544 阅读 · 0 评论 -
JAVA的三种标准输入方式举例
import java.io.*;import java.util.*;public class TestInput { public TestInput() { } public static void main(String[] args) throws IOException { byte b[]= new byte[50];转载 2014-08-14 21:03:30 · 924 阅读 · 0 评论 -
JAVA单例设计模式(饿汉式和懒汉式的区别)
定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。类型:创建类模式类图:类图知识点:1.类图分为三部分,依次是类名、属性、方法2.以>结尾的为注释信息3.修饰符+代表public,-代表private,#代表protected,什么都没有代表包可见。4.带下划线的属性或方法代表是静态的。5.对类图中对象的关转载 2014-08-13 15:39:12 · 1166 阅读 · 0 评论 -
Java的4种代码块
一、普通代码块 直接在一个方法中出现的{}就称为普通代码块,例子程序如下: public class CodeDemo01{ public static void main(String[] args){ //普通代码块 { int x = 10; System.out.println("x=" + x); }原创 2014-06-03 18:38:07 · 611 阅读 · 0 评论 -
类名.Class文件的对象(类名.Class文件作为一个类的实例化)
1、.当在内部类中使用this指的就是内部类的对象, 为了访问外层类对象,就可以使用外层类名.this来访问。2、在java中,每个class都有一个相应的Class对象,当编写好一个类,编译完成后,在生成的.class文件中,就产生一个Class对象,用来表示这个类的类型信息。获得Class实例的三种方式:1). 利用对象调用getClass()方法获取该对象的Class实例转载 2014-08-07 19:28:43 · 1405 阅读 · 0 评论 -
java中的静态代码块、构造代码块、构造函数执行顺序
转载▼一、什么时候会加载类? 使用到类中的内容时加载:有三种情况 1.创建对象:new StaticCode(); 2.使用类中的静态成员:StaticCode.num=9; StaticCode.show(); 3.在命令行中运行:java StaticCodeDemo二、类所有内容加载顺序和内存中的存放位置: 利用语句进原创 2014-06-03 18:39:26 · 962 阅读 · 0 评论 -
Java中throw和throws的区别
系统自动抛出的异常所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行。 语句抛出的异常 用户程序自定义的异常和应用程序特定的异常,必须借助于 throws 和 throw 语句来定义抛出异常。throw是语句抛出一个异常。语法:throw (异常对象转载 2014-08-05 14:36:24 · 629 阅读 · 0 评论 -
浅谈java的子类构造器与其父类关系
简单谈一下Java程序设计语言中,子类构造器与其父类构造器的关系。 Java是属于单继承的对象语言,子类可以继承并且使用其父类的所有变量和方法,非常典型的例子是Java中所有类都是继承于超级类Object,因此每一个类都可以使用Object类中的变量和方法。子类在继承父类时需要extends标记继承的父类,例如public class sun extends father{},其中子类s原创 2014-06-03 19:04:17 · 788 阅读 · 0 评论 -
类名.class, class.forName(), getClass()区别
1)Class cl=A.class; JVM将使用类A的类装载器,将类A装入内存(前提是:类A还没有装入内存),不对类A做类的初始化工作.返回类A的Class的对象2)Class cl=对象引用o.getClass();返回引用o运行时真正所指的对象(因为:儿子对象的引用可能会赋给父对象的引用变量中)所属的类的Class的对象 3)Class.forName("类名"); .装入类A,并转载 2014-07-11 09:23:19 · 831 阅读 · 0 评论 -
运行时异常与一般异常有何异同
Throwable 是所有 Java 程序中错误处理的父类 ,有两种资类: Error 和 Exception 。 Error :表示由 JVM 所侦测到的无法预期的错误,由于这是属于 JVM 层次的严重错误 ,导致 JVM 无法继续执行,因此,这是不可捕捉到的,无法采取任何恢复的操作,顶多只能显示错误信息。Exception :表示可恢复的例外,这是可捕捉到的。Java 提供了两转载 2014-07-29 14:52:25 · 511 阅读 · 0 评论 -
JAVA利用冒泡排序构思出的求数组逆序的算法
class InverseTest //定义一个测试逆序类{public static void main(String[] args) {int[] a={1,5,2,7,9,3,4}; //定义一个测试数组Inverse(a); //调用求逆序方法PrintArray(a); //调用打印数组方法}public原创 2014-06-03 18:27:32 · 963 阅读 · 0 评论 -
java-利用折半查找算法将一个数插入有序数组中适当位置
class HalfSearchTest //定义折半查找测试类{public static void main(String[] args) //定义测试方法main{int[] a={1,3,5,6,7,8,9}; //定义测试方法数组System.out.println(HalfSearch_1(a,2)); //原创 2014-06-03 18:30:41 · 1202 阅读 · 0 评论 -
Java类的初始化顺序 (静态变量、静态初始化块、变量 )
我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过下面的测试代码来验证这一点: Java代码 public class InitialOrderTest { // 静态变量 public static String staticField = "原创 2014-06-03 23:22:04 · 826 阅读 · 0 评论 -
java中synchronized用法
打个比方:一个object就像一个大房子,大门永远打开。房子里有很多房间(也就是方法)这些房间有上锁的(synchronized方法), 和不上锁之分(普通方法)。房门口放着一把钥匙(key),这把钥匙可以打开所有上锁的房间。另外我把所有想调用该对象方法的线程比喻成想进入这房子某个 房间的人。所有的东西就这么多了,下面我们看看这些东西之间如何作用的。在此我们先来明确原创 2014-06-09 16:23:26 · 512 阅读 · 0 评论 -
内部类及静态内部类的实例化
内部类的实例化如果内部类未声明为static,在实例化时首先需要new一个外部类的对象。并通过p.new Inner()的方式new 内部类,表明这个内部类指向该外部类。内部类的class类型为:Parent.Inner,而不是p.Inner,这个需要和new的方式区分开。public class Test { public static void main(String[]转载 2014-07-02 11:24:07 · 532 阅读 · 0 评论 -
Java自定义异常
/*下面做了归纳总结,欢迎批评指正*/ /*自定义异常*/ class ChushulingException extends Exception { public ChushulingException(String msg) { super(msg); } } class Chush转载 2014-07-05 11:16:36 · 578 阅读 · 0 评论