2017-12-28 craneyuan
定义 Java注解又称Java标注,是Java语言5.0版本开始支持加入源代码的特殊语法元数据(元数据 Metadata:描述数据的数据)。 Java语言中的类、方法、变量、参数和包等都可以被标注。和Javadoc不同,Java标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java虚拟机可以保留标注内容,在运行时可以获取到标注内容。 当然它也支持自定义Java标注 内置的注解 Java 5 定义了一套注解,共有 7 个,3 个在 java.lang 中,剩下 4 个在 java.lang.annotation 中。 more 作用在代码的注解(java.lang包中) @Override 继续阅读 »
2015-04-25 Eric Wang
本文给出了五种自然段落的组合方式,具体形式参见底部给出的链接,无积分下载,不管各个段落形式如何,只要段落之间存在换行分隔,该程序即可正确运行。在此提供两种切分段落的方法,分别见下面的法一和法二。 法一: ```java import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; /**         ClassName SplitParagr 继续阅读 »
2016-03-10 demon7452
Java学习笔记-Object类 Note:参阅书籍《Core Java,Volume I:Fundamentals》 Object类的说明 Object类是Java中所有类的最终祖先,在Java中每个类都是由它扩展而来; 如果没有明确的指出超类,Object就被认为是这个类的超类。class A extends Object是不必要的; 可以使用Object类型的变量引用任何类型的对象,Object obj = new A(); 在Java中,只有基本类型(primitive types)不是对象,例如:数值、字符和布尔类型的值都不是对象。所有的数组类型,不管是对象数组还是基本类型的数组都扩展于Object类。 继续阅读 »
2015-03-06 码农明明桑
从java 5.0开始,为我们提供注解功能,通过注解可以限制代码的重载,过时,以及实现一些其他功能,这里,就来分析一下java的注解。 java 元注解 首先来看java元注解,分别是: more @Target @Retention @Documented @Inherited 这些注解和他们所修饰的类在java.lang.annotation包中,代码都很简单,可以去查看一下。 @Target 描述注解的使用范围,取值: ElementType.CONSTRUCTOR:描述构造器 ElementType.FIELD:描述成员变量 ElementType.VARIABLE: 描述局部 继续阅读 »
2015-06-02 Eric Wang
在eclipse的 "problems" 选项卡中显示如下错误信息 java Description:Type Project facet Java 1.8 is not supported by target runtime Apache Tomcat v7.0 Resource:groupping ... 由StackOverflow上的回答可知,Java facet的版本总是需要和Java编译器的版本一致,所以最好的方式是通过Project Facets Properties面板进行修改。 1. 查看Problems面板信息 2. 打开Project Facets Properties面板 3. 修改configurat 继续阅读 »
2017-04-06 blademainer
众所周知,当我们执行没有任何调优参数(如java -jar myapplication.jar)的 Java 应用程序时,JVM 会自动调整几个参数,以便在执行环境中具有最佳性能。但是许多开发者发现,如果让 JVM ergonomics (即JVM人体工程学,用于自动选择和行为调整)对垃圾收集器、堆大小和运行编译器使用默认设置值,运行在Linux容器(docker,rkt,runC,lxcfs 等)中的 Java 进程会与我们的预期表现严重不符。 本篇文章采用简单的方法来向开发人员展示在 Linux 容器中打包 Java 应用程序时应该知道什么。 more 存在的问题 我们往往把容器当虚拟机,让它定义一些虚拟 CPU 和虚拟内 继续阅读 »
2013-07-23 码农明明桑
前几天去一个公司参加面试遇到这个问题,Java中Collection和Collections的区别,当时不会,回来从网上找到,现在记录一下。 1、java.util.Collection 是一个 集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。 Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack└Set 2、java.util.Collections 是一个包装类。它包含有各 继续阅读 »
2016-08-24 craneyuan
Java访问修饰符 |访问修饰符|作用范围| |---|---| |public| 完全开发| |private|只能本类访问| |protected|同包及子类访问| |default(无修饰符时)|同包访问| Java用于类的修饰符(2个)和限定符(2个) |访问修饰符|作用范围| |---|---| |public| 完全开发| |default(无) |同包访问| 注意:内部类可以拥有更多的访问修饰符 more |限定符|描述| |---|---| |abstract|指定为抽象类| |final|指定为最终类,不可被继承| Java用于成员变量的修饰符 public protected private 继续阅读 »
2016-05-11 Eric Wang
问题来源 一般来说,一个大型的项目都会有一些依赖的JAR包(Java归档,英语:Java ARchive),而在将项目部署到服务器的过程中,如果没有持续集成环境的话,也就是说服务器不支持在线编译及打包,那么需要自己上传依赖的JAR包,然而可能服务器上已经存在了该项目所依赖的JAR包(比如项目修复BUG,重新打包上传,而依赖不变或者版本升级,修改方法等),无需再次上传所依赖的JAR包,此时只需将该项目单独打包,在运行的时候指定CLASSPATH即可。 在将JAR包部署到服务器上之后,设置CLASSPATH环境变量,运行java -jar ...命令出现ClassNotFoundException异常。之后又试用了诸多其它参数设置C 继续阅读 »
2016-08-17 craneyuan
java.util.Scanner类是一个简单的文本扫描类,它可以解析基本数据类型和字符串。它本质上是使用正则表达式去读取不同的数据类型。 Java.io.BufferedReader类为了能够高效的读取字符序列,从字符输入流和字符缓冲区读取文本。 下面是两个类的不同之处: 当nextLine()被用在nextXXX()之后,用Scanner类有什么问题 尝试去猜测下面代码的输出内容; // Code using Scanner Class import java.util.Scanner; class Differ { public static void main(String args[]) { 继续阅读 »