随笔分类 -  Java

Java

摘要:Spring Boot的基础结构共三个文件: 1 src/main/java 程序开发以及主程序入口 2 src/main/resources 配置文件 3 src/test/java 测试程序 1、DemoApplication.java 建议放到跟目录下面,主要用于做一些框架配置 2、domai 阅读全文
posted @ 2018-02-26 17:01 曹守鑫 阅读(137) 评论(0) 推荐(0)
摘要:要考虑到所有可能出现异常的情况,并对异常做处理操作,日志记录,不然程序会终止运行public void downFromCloud(String inputDir, String outputDir) { Configuration conf = new Configuration()... 阅读全文
posted @ 2014-07-22 11:49 曹守鑫 阅读(362) 评论(0) 推荐(0)
摘要:1 如何将高版本的jdk通过Eclipse编译为较低版本的2 当前SAE支持的jdk版本是1.6还有web项目war包不能是3.0版本及以上,必须编译为较低版本3 No context on this server matched or handled this request问题:有的是jdk版本... 阅读全文
posted @ 2014-07-05 13:05 曹守鑫 阅读(226) 评论(0) 推荐(0)
摘要:正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度(一个... 阅读全文
posted @ 2014-07-04 10:10 曹守鑫 阅读(149) 评论(0) 推荐(0)
摘要:1.选择工程菜单Project->Genarate Javadoc 2.选择工程鼠标右键菜单Export 选择Java 下面Javadoc 点next 按钮 3.选择工程菜单File->Export 选择Java 下面Javadoc 点next 按钮 选择生成Javadoc 文档内容( 般选publ... 阅读全文
posted @ 2014-06-25 17:35 曹守鑫 阅读(662) 评论(0) 推荐(0)
摘要:windows:中C/C++是.dll表示调用的动态链接库,而linux是.so表示动态链接库JNI(Java Native Interface)的书写步骤 ·编写带有native声明的方法的java类 ·使用javac命令编译所编写的java类 ·使用javah ?jni java类名生成扩展名为... 阅读全文
posted @ 2014-05-13 15:15 曹守鑫 阅读(498) 评论(0) 推荐(0)
摘要:面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台的代码,然后让我们判断输出的结果。这实际上是在考查我们对于继承情况下类的初始化顺序的了解。我们大家都知道,对于静... 阅读全文
posted @ 2014-05-08 17:58 曹守鑫 阅读(236) 评论(0) 推荐(0)
摘要:Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Integer; at com.bupt.acm.test.TestArrayList... 阅读全文
posted @ 2014-05-02 19:18 曹守鑫 阅读(635) 评论(0) 推荐(0)
摘要:hbase-0.96.x相对hbase-0.94.x的改变hadoop:hadoop-2.2.0hbase:hbase-0.96.01.org.apache.hadoop.hbase.client.Put 取消了无参的构造方法 Put类不再继承Writable类 0.94.6时publ... 阅读全文
posted @ 2014-04-25 17:26 曹守鑫 阅读(1516) 评论(0) 推荐(0)
摘要:三、线程的几种状态 在Java当中,线程通常都有五种状态,创建、就绪、运行、阻塞和死亡。 第一是创建状态。在生成线程对象,并没有调用该对象的start方法,这是线程处于创建状态。 第二是就绪状态。当调用了线程对象的start方法之后,该线程就进入了就绪状态,但是此时线程调度程序还没有把该线程设... 阅读全文
posted @ 2014-04-18 10:45 曹守鑫 阅读(561) 评论(0) 推荐(0)
摘要:1)已知某个文件内包含一些电话号码,每个号码为8位数字,统计不同号码的个数。8位最多99 999 999,大概需要99m个bit,大概10几m字节的内存即可。 (可以理解为从0-99 999 999的数字,每个数字对应一个Bit位,所以只需要99M个Bit==1.2MBytes,这样,就用了小小的1... 阅读全文
posted @ 2014-04-15 23:31 曹守鑫 阅读(434) 评论(0) 推荐(0)
摘要:在Java编程语言和环境中,即时编译器(JITcompiler,just-in-time compiler)是一个把Java的字节码(包括需要被解释的指令的程序)转换成可以直接发送给处理器的指令的程序。当你写好一个Java程序后,源语言的语句将由Java编译器编译成字节码,而不是编译成与某个特定的处... 阅读全文
posted @ 2014-04-15 10:30 曹守鑫 阅读(1637) 评论(0) 推荐(1)
摘要:1.ji什么是Java的反射? 要让Java程序能够运行,就得让Java类被Java虚拟机加载。Java类如果不被Java虚拟机加载就不能正常运行。正常情况下,我们运行的所有的程序在编译期时候就已经把那个类被加载了。Java的反射机制是在编译时并不确定是哪个类被加载了,而是在程序运行的时候才加载、探知、自审。使用的是在编译期并不知道的类。这样的编译特点就是java反射2.Java反射的作用?假如有两个程序员,一个程序员在写程序的时需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码是不能通过编译的。此时,利用Java反射的机制,就可以让第一个程序员在没有得到第 阅读全文
posted @ 2014-04-12 16:33 曹守鑫 阅读(730) 评论(0) 推荐(0)
摘要:Java内存机制Java内存分为若干个区域:程序计数器,Java虚拟机栈(存储临时变量表,操作数栈,动态链接,方法入口),对应着栈的出栈入栈过程,本地方法栈(调用本地方法),Java堆(内存最大的一块,所有线程共享的区域,在虚拟机启动时创建,此内存区的唯一目的是存放对象实例,包括数组,Java堆是垃圾管理器管理的的主要区域,分为新生代,老年代,永生代)、方法区(跟Java堆一样,也是所有线程共享的区域,用来加载类信息,常量、静态变量、及时编译的代码数据,也是垃圾搜集器同一管理)、运行时常量池(用于存放编译期生成的各种字面常量和符号引用,Java并不要求所有常量在编译期才产生,例如字符串);程序 阅读全文
posted @ 2014-03-18 18:40 曹守鑫 阅读(238) 评论(0) 推荐(0)
摘要:但为什么一个方法前不能同时加abstract与static呢?static是静态,就是在编译时已经确定的东西,当然不能是抽象(动态)的,那是运行时才能确定的东西一,抽象类:abstract 1,只要有一个或一个以上抽象方法的类,必须用abstract声明为抽象类; 2,抽象类中可以有具体的实现方法; 3,抽象类中可以没有抽象方法; 4,抽象类中的抽象方法必须被它的子类实现,如果子类没有实现,则该子类继续为抽象类 5,抽象类不能被实例化,但可以由抽象父类指向的子类实例来调用抽象父类中的具体实现方法;通常作为一种默认行为; 6,要使用抽象类中的方法,必须有一个子类继承于这个抽象类,并实现抽象类中的 阅读全文
posted @ 2014-03-18 13:45 曹守鑫 阅读(386) 评论(1) 推荐(1)
摘要:HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。2.HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。3.HashTable有一个contains(Objectvalue),功能和containsV 阅读全文
posted @ 2014-03-18 10:15 曹守鑫 阅读(173) 评论(0) 推荐(0)
摘要:Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。Java是如何管理内存为了判断Java中是否有内存泄露,我们首先必须了解Java是如何管理内存的。Java的内存管理就是对象的分配和释放问题。在Java中,程序员需要通过关键字new为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。另 阅读全文
posted @ 2014-03-10 15:28 曹守鑫 阅读(236) 评论(0) 推荐(0)
摘要:转载:http://www.cnblogs.com/wannianma/archive/2011/04/03/A00000011.html1.简单的说:Java把内存划分成两种:一种是栈内存,一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。堆内存用来存放由new创建的对象和数组。在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。在堆中产生了一个数组或对象后,还可以在栈中定义一个特殊的 阅读全文
posted @ 2014-03-10 14:39 曹守鑫 阅读(1803) 评论(0) 推荐(0)
摘要:在实现PageRank算法中犯了两个错误,1:在对double类型赋值时,除法中没有将分母设置为double类型,而是int类型,导致出现商为0的结果错误,导致推迟2:当定义两个数组时,对数组赋值时,忘记了,数组是对象的特点直接nowRank=resultRank;其中resultRank又重新赋值,所以导致nowRank中元素值也发生变化,因为数组是对象,赋值意味着指向了同一个对象代码:public class TestDouble { public static void main(String[] args) { int count=2; double ... 阅读全文
posted @ 2014-03-07 17:08 曹守鑫 阅读(1163) 评论(0) 推荐(0)
摘要:一、什么是嵌套类及内部类?可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:其一、在一个类(外部类)中直接定义的内部类;其二、在一个方法(外部类的方法)中定义的内部类;其三、匿名内部类。下面,我将说明这几种嵌套类的使用及注意事项。二、静态嵌套类如下所示代码为定义一个静态嵌套类,在静态嵌套类内部,不能访问外部类的非静态成员,这是由Java语法中"静态方法不能直接访问非静态成员& 阅读全文
posted @ 2014-01-03 09:20 曹守鑫 阅读(171) 评论(0) 推荐(0)