- 浏览: 990835 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
运乃强谦:
老哥,你确定这个wsdl 地址 可以访问?
[CXF] Server与Client实现方式五:HTTPS -
wangyudong:
由CXF实现的微服务需要有比较好的工具去测试RESTful A ...
[CXF] Server与Client实现方式四:JMS -
dengmiao:
JAXB学习三 (验证) -
panamera:
你好。可以提供maven pom配置是怎么配置的?不知道你使用 ...
[CXF] Server与Client实现方式四:JMS -
u010221220:
请问楼主一二三部分的代码都应该放在哪个函数体中。
使用JDI监听Java程序运行
import FAQ
-
Q: Does importing all classes in a package make my object file (.class or .jar) larger?
A: No, import only tells the compiler where to look for symbols.
-
Q: Is it less efficient to import all classes than only the classes I need?
A: No. The search for names is very efficient so there is no effective difference.
-
Q: Doesn't it provide better documentation to import each class explicitly?
A: This shows good intentions, but ...
- It's hard to remember to remove classes when they are no longer used, so the import list is surprisingly often wrong. It can seriously slow down reading because unusual or unexpected class imports make me look for that class, only to discover that it must have been used in an earlier version.
- Explicit class imports permit accidentally defining classes with names that conflict with the standard library names. This is very bad. Using "*" to import all classes prevents this dangerous naming accident.
- It's annoying to always update this list, altho if you use NetBeans, fixing the list is only a click away (see below).
-
Q: I've imported java.awt.*, why do I also need java.awt.event.*?
A: The wildcard "*" only makes the classes in this package visible, not any of the subpackages.
-
Q: Why don't I need an import to use String, System, etc?
A: All classes in the java.lang package are visible without an import.
-
Q: Is the order of the imports important?
A: No. Group them for readability.
Static imports in Java 5
Java 5 added an import static option that allows static variables (typically constants) to be referenced without qualifying them with a class name. For example, after
import static java.awt.Color;
It would then be possible to write
Color background = RED;
instead of
Color background = Color.RED;
Adding this "feature" wasn't the best idea because it leads to name pollution and confusion about which class constants come from. Even Sun (see References below) basically advises not to use it!
- 使用Character.isJavaIdentifierStart(char ch)可以判断一个字符是不是适合做为java标识符的首字符
- 使用Character.isJavaIdentifierPart(char ch)可以判断一个字符是不是适合做标识符的非首字符
4.良好的命名很重要(转自java rulers),例如
class Reuse {
Reuse Reuse(Reuse Reuse) {
Reuse: for (;;) {
if (Reuse.Reuse(Reuse) == Reuse)
break Reuse;
}
return Reuse;
}
}
你能清晰而准确的看懂这个程序吗?
注:规则的例外:假如已经有了长时间的使用习惯和相互约定,就不用盲从java命名规则
5.关于行分隔符的问题(java rulers)
应该程序应该尽是使用line.separator的系统属性来实现平台无关行分隔,或者例如在写文件的时候使用Writer的newLine()或是PrintWriter的println()方法。
注:line.separator不适用于HTTP的网络程序,因为HTTP中因定CRLF(\r\n)为行分隔符
6.一个好玩的程序(受java rulers的启示)
看java rulers说在java中支持Unicode码做为变量名和类型声明等。就突发其想,写了以下程序:
\u0070\u0061\u0063\u006b\u0061\u0067\u0065\u0020\u0063\u006f\u006d\u002e\u0074\u0069\u0062\u0063\u006f\u002e\u0063\u0064\u0063\u002e\u006c\u0069\u0075\u0067\u0061\u006e\u0067\u002e\u006a\u0061\u0076\u0061\u002e\u0072\u0075\u006c\u0065\u0072\u0073\u003b
\u0063\u006c\u0061\u0073\u0073\u0020\u0054\u0065\u0073\u0074\u007b\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0073\u0074\u0061\u0074\u0069\u0063\u0020\u0076\u006f\u0069\u0064\u0020\u006d\u0061\u0069\u006e\u0028\u0053\u0074\u0072\u0069\u006e\u0067\u005b\u005d\u0020\u0061\u0072\u0067\u0073\u0029\u0020\u007b\u000a\u0053\u0079\u0073\u0074\u0065\u006d\u002e\u006f\u0075\u0074\u002e\u0070\u0072\u0069\u006e\u0074\u006c\u006e\u0028\u0022\u004c\u0069\u0075\u0067\u0061\u006e\u0067\u0022\u0029\u003b\u000a\u007d\u007d
你能看懂这个程序吗?如果你想看运行结果,可以把这个内容复制,然后在Eclipse某个工程的src目录上粘贴,就可以看有到有一个包:com.tibco.cdc.liugang.java.rulers和该包下的一个Test类会生成。最后运行结果是输出一个:Liugang
可以写好一串java代码的字符串,然后使用以下两个方法进行转换:
public static String toUnicode(String str){
String result = "";
for(int i = 0;i<str.length();i++){
char iChar = str.charAt(i);
result += toUnicode(iChar);
}
return result;
}
public static String toUnicode(char ch){
String hexString = Integer.toHexString(ch);
for(int i =hexString.length();i<4;i++){
hexString = "0"+hexString;
}
return "\\u"+hexString;
}
例如:
System.out.println(toUnicode("package com.tibco.cdc.liugang.java.rulers;"));
System.out.println(toUnicode("class Test{public static void main(String[] args) {\nSystem.out.println(\"Liugang\");\n}}"));
注:居然又发现了Eclipse的一个强大之处,以前只知道一串java内容直接在文件夹上粘贴,可以生成对应的Java类,这次居然发现,这个内容还可以是Unicode码!
发表评论
-
自定义Spring MVC中的数据绑定
2015-02-01 18:27 1503默认情况下,spring mvc的数据映射的实现是自动查找请 ... -
Java单例(Singleton)
2014-05-22 11:40 1913【译自:http://www.journaldev.com ... -
Java函数式编程学习二
2014-06-05 10:58 2677上一节里,介绍了一个函数接口: java.uti ... -
Java函数式编程学习一
2014-05-07 22:02 7349一、缺省方法 首先看一段用Java 8写的代码: ... -
快速排序的几种实现
2014-05-06 23:13 1695快速排序是最经典的 ... -
计算Fibonacci数列
2014-05-04 15:37 1667Fibonacci数列的定义如 ... -
(转)Java函数式编程系列文章
2014-04-11 16:52 779转载: Java函数式编程(一) Java函数式编程( ... -
Java中的动态代理
2014-04-02 15:11 2360在使用CXF的时候,尤其是创建针对REST或SOAP服务的 ... -
Java 7中的Path
2014-04-01 17:33 0package test; public ... -
HashMap对HashTable和ArrayList对Vector
2014-03-26 14:16 857有人面试总喜欢问比 ... -
Java国际化:BreakIterator
2014-03-21 11:51 2980【译自:http://tutorials.jenkov.c ... -
Java中使用StreamTokenizer
2014-03-21 09:44 3330按照Javadoc里的描述:StreamTokenizer ... -
Java中枚举的用法
2014-03-19 15:31 2807Java 5里新引用了枚举类型,这篇文章简单介绍一下它的基 ... -
Java线程类三
2014-03-06 11:18 1145一、Callable 最早创建线程要么是通过实现Runn ... -
Java线程类二
2014-03-05 14:21 1199一、java.util.concurrent.Exchan ... -
Java线程类一
2014-03-04 17:25 955一、java.util.concurrent.CountD ... -
基于Java的Dropbox文件操作
2014-01-22 11:15 4339Dropbox提供了基于各种类型的API和应用类型的开发工 ... -
使用特殊字符控制Console输出
2013-11-28 10:39 1070如果要在console上打印 Hello + 1到10,最简 ... -
控制JAXB的输入输出
2013-11-27 16:06 4162上一节介绍了如何在解析模型的时候构建模型之间的父子链,其实 ... -
JAXB中怎么构建对父对象的链接
2013-11-27 11:17 3606还是以在第一节介绍JAXB的schema为例: < ...
相关推荐
【JAVA编程学习】是计算机科学领域的一个重要主题,尤其对于初学者来说,它是一个非常有价值的起点。Java是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性而闻名,这得益于Java虚拟机(JVM)...
Java学习路线(鱼皮)是一条完整、实用、开源的学习路线,旨在帮助学习者快速掌握Java开发的所有知识点,并提供了丰富的资源推荐和学习建议,以便学习者更好地学习和掌握Java开发技术。 知识点: * Java编程基础 *...
《Java入门1·2·3:一个老鸟的Java学习心得》是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。《Java入门1·2·3:一个老鸟的Java学习心得》充分考虑了初学Java...
Java学习心得 在编程的世界里,Java是一种广泛应用的高级编程语言,以其跨平台、面向对象的...而"java学习心得.txt"这个文件名,很可能包含了一位开发者在学习过程中的笔记和经验总结,是值得参考和借鉴的宝贵资料。
最全JAVA学习路线一条龙思维导图(附资源链接)PS:程序员鱼皮 1. 最新,完整一条龙的大厂 Java 学习路线,从入门到入土 2. 同时适用于想全面学习 / 快速求职的同学,可以根据符号来定制自己的专属学习路线 3. 给出...
- **Reddit的r/learnjava**:一个Java学习者交流的社区,分享经验、提问答疑。 - **Java-forums.org**:专门讨论Java技术的论坛,可找到大量技术讨论帖。 - **DZone**:发布Java相关的文章和技术资讯,帮助开发者...
Java学习笔记 Java是一种流行的编程语言,广泛应用于Android应用程序开发、Web应用程序开发、桌面应用程序开发等领域。以下是Java学习笔记的摘要信息: 一、Java技术基础 * 1.1 编程语言:Java是一种面向对象的...
资源名称:Java入门1·2·3——一个老鸟的Java学习心得内容简介:本书是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。本书充分考虑了初学Java语言的种种困难...
在这个过程中,"java学习路线脑图"可能是一个非常有用的工具,它可以帮助你可视化学习路径,清晰地看到各个知识点之间的联系,从而更有效地组织学习计划。不断实践和项目经验积累,将使你成为一位精通Java的开发人员...
《Java学习指南(第4版)(上、下册)》是畅销Java学习指南的ZUI新版,详细介绍了Java 6和Java 7的语言特性和API。本书全面介绍了Java的基础知识,力图通过完备地介绍Java语言、其类库、编程技术以及术语,从而成为一本...
"Java学习笔记——良葛格"是一份专为初学者设计的教程资料,由良葛格精心编写,旨在帮助读者掌握JDK5.0版本的Java基础知识。JDK(Java Development Kit)是Java开发的核心工具集,包含了编译器、调试器和运行环境等...
"java学习书籍"这个主题意味着我们将深入探讨Java的学习资源,尤其是通过书籍这一传统但有效的途径。在这个数字化时代,书籍仍然是获取系统性知识的重要渠道。"it就是不断充实自己"这句描述强调了在信息技术领域持续...
1)你对学习Java是否有兴趣? 2)你是否能静下心来坚持不懈地学习? 嗯,这是个容易但又绝对不应该忽略的问题,你确信自己对Java感兴趣、而且又有吃苦的准备,那你才可能学好Java!如果具备这两点条件,就请继续往...
总的来说,Java学习是一个逐步深入的过程,需要耐心和实践。遵循上述步骤,并结合个人的学习节奏和兴趣,你将能够有效掌握这门强大的编程语言。在学习过程中,不断反思、总结,保持对新技术的热情,你将成为一名出色...
总之,“Java学习资料大全”应该包含了以上各个领域的教程、示例代码、实践项目和相关书籍,为初学者到高级开发者提供了全面的学习资源。通过深入学习并不断实践,可以成为一名熟练的Java开发者。
总的来说,这份"JAVA学习源代码"资源是一个完整的Java学习套餐,不仅提供了理论知识,还提供了丰富的实践素材。对于想要深入学习Java的人来说,这是一个很好的起点,通过阅读、理解并实践这些源代码,可以逐步提升...
首先,理解基础语法是Java学习的第一步。这包括变量、数据类型、运算符、流程控制(如if语句、for循环和while循环)、数组等基本概念。深入理解这些基础将有助于构建扎实的编程思维。 其次,进入面向对象编程的概念...
1. 面向对象(OOP):Java的核心是面向对象编程,它将数据和操作数据的方法封装在一起,形成类。面向对象的三大特性——封装、继承和多态,在06面向对象(上)、07面向对象(中)和08面向对象(下)中进行了详细介绍...
以上知识点只是Java学习的一部分,深入理解并实践这些内容,将有助于成为一个合格的Java开发者。这个压缩包中的“java资料”很可能会涵盖这些领域的教程、示例代码、练习题和参考手册,为你的Java学习之旅提供全方位...