学会在idea(eclipse)中阅读、调试源码,是java程序员必不可少的一项技能。
创新互联主要从事网站制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务巴楚,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
在idea中配完环境后,默认其实也是能够对jdk的源码进行debug调试的。但是无法在源码中添加自己的注释,无法添加自己的理解。如果干瞪眼看的话,可能过段时间,就忘记了。下面就介绍下,如何在jdk源码中为所欲为,像在我们自己的代码中一样写注释、调代码:
打开idea,选择Project-File-Project Structure-SDKs-Sourcepath,初始状态如下图 :
打开本地jdk安装路径,本处为E:\java\jdk8,将此路径下的src.zip压缩包解压到自定义的指定文件夹(可以在电脑磁盘任意位置),本处解压到同目录的jdk_source文件夹下,如下图:
继续在步骤1中的设置页面中操作,将E:\java\jdk8\src.zip通过右侧的减号将其移除;并通过右侧的加号,将解压文件夹E:\java\jdk8\jdk_source导入进来;点击apply,再点击OK。导入结果见下图:
这时,再重新打开jdk的源码类,我们就可以在源java文件中,添加自己的注释了。
一定注意:添加注释时,一定不要新加一行写注释。最好在一行代码的后面,使用//进行注释。否则行号和真正的jre中编译后的代码行号对应不上,如果对源码debug时,会出现代码运行和行号不匹配的情况
没有翻译软件,但是能编写翻译程序。
java 代码翻译实例:
1.输入一个以’@’结束的字符串,从左至右翻译。若下一个字符是数字n(0≤n≤9),表示后一个字符重复n+1 次,不论后一个字符是否为数字;若下一个字符非数字,则表示自己。
2.翻译后,以3 个字符为一组输出,组与组之间用空格分开。
例如’A2B5E34FG0ZYWPQ59R@’,翻成’ABB_BEE_EEE_E44_44F_GZY_WPQ_999_999_R@ ’。
3.分析:首先直接遍历数组把字符串按要求进行翻译,然后将翻译后的字符串进行分组形成字符串数组,最后把字符串数组用下划线连接输出。
java翻译源代码:
import java.util.Scanner;
public class Main5{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.nextLine();
int length = s.length();
String result = "";
char[] str = new char[length]
for (int i = 0; i length; i++) {
str[i] = s.charAt(i);
}
result += str[0];
if (str[length - 1] != '@') {
System.out.println("输入有误!");
} else {
for (int index = 0; index length - 1;) {
if ('0' == str[index + 1] || '1' == str[index + 1] || '2' == str[index + 1] || '3' == str[index + 1]
|| '4' == str[index + 1] || '5' == str[index + 1] || '6' == str[index + 1]
|| '7' == str[index + 1] || '8' == str[index + 1] || '9' == str[index + 1]) {
for (int i = 0; i ((Integer.parseInt(str[index + 1]+"")) + 1); i++) {
result += str[index + 2];
}
index += 2;
} else {
result += str[index + 1];
index++;
}
}
}
System.out.println(getGroup(result));
}
//每3个分一组
public static String getGroup(String s){
String[] r;
if(s.length()%3 == 0){
r = new String[s.length()/3];
}else{
r = new String[s.length()/3+1];
}
String result = "";
int j = 0;
for(int i=0;is.length();){
if(i+3 = s.length()){
r[j]=s.substring(i, i+3);
j++;
i += 3;
}else{
r[j] = s.substring(i);
j++;
i += 3;
}
}
for(int i=0;ir.length-1;i++){
result += (r[i]+"_");
}
result += r[r.length-1];
return result;
}
}
US/ˈdʒɑː.və/ ;UK /ˈdʒɑː.və/ 。
【N-UNCOUNT】Java语言(一种计算机语言,尤用于创建网站)
Java is a computer programming language. It is used especially in creating websites.
例子:
The Java programming language provides the JDBC API, which defines how to access a relational database.
Java编程语言提供了JDBC API,它定义了怎样访问一个关系数据库。
扩展资料:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。
语言特点:
1.简单性
Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。
2.面向对象
Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。
3.分布性
Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。
4.编译和解释性
Java编译程序生成字节码(byte-code),而不是通常的机器码。Java字节码提供对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台。Java程序可以在任何实现了Java解释程序和运行系统(run-time system)的系统上运行。
5.稳健性
Java原来是用作编写消费类家用电子产品软件的语言,所以它是被设计成写高可靠和稳健软件的。Java消除了某些编程错误,使得用它写可靠软件相当容易。
6.安全性
Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。
7.可移植性
Java使得语言声明不依赖于实现的方面。Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。
8.高性能
Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。
9.多线索性
Java是多线索语言,它提供支持多线索的执行(也称为轻便过程),能处理不同任务,使具有线索的程序设计很容易。Java的lang包提供一个Thread类,它支持开始线索、运行线索、停止线索和检查线索状态的方法。
10.动态性
Java语言设计成适应于变化的环境,它是一个动态的语言。例如,Java中的类是根据需要载入的,甚至有些是通过网络获取的。
参考资料:java-百度翻译
cambridge dictionary官网
java-百度百科
1、Java Language Conversion Assistant
Java Language Conversion Assistant是一款最出色和最受欢迎的Eclipse插件,它可以用一些简单的语法实现Java代码转换成C#代码。有些语法可以忽略文件、忽略类、合并类,或者将特殊的方法翻译成.NET的事件和属性。
2、Octopus .NET Translator
这是一个商业软件,不仅支持Java代码转换成C#代码,而且支持Java代码转换成C++,C#代码转换成VB.NET,以及VB.NET转换成C#。该软件主要提供一系列语法转换器,并且转换质量和速度都很不错。
3、Tangible Solution’s Java to C# Converter
这款Java转换C#的工具提供了商业版和免费版,免费版仅支持1000行的代码转换,但是这款软件的转换结果非常精确而且全面。该免费版软件可以将整个Java文件目录转换成C#文件,并且支持自定义设置,也可以添加注释。对任何一个C#初学者来说,它都是一款很不错的学习工具。
4、XES – Java To C#
这款Java转换C#工具以使用方便而著称,该工具可以提供一个准备的转换结果,并且让转换恰到好处,这款工具对初学者来说相当的方便。
5、varycode
Verycode是一个最好的在线代码转换平台,支持对c#, VB, Java, Ruby , Python等编程语言之间的转换
没发现一种万能的软件。
这些代码都是英文构成的,直译的话用"全文翻译"软件,或复制到在线全文翻译网站 就可以了,但是只英译汉的层面。
还有些就是代码升级转换之类的软件,如把delphi代码翻译成c#代码,把vc6代码升级成vc.net代码。
还有些是调试器,可以对代码段进行翻译,诸如: 入口,循环,出栈,跳出,DES加密等词。
还有就是写查毒软件,可以对代码段行为进行翻译,加壳,压缩,伪装,IO操作,变形等词。
在这些之外的逻辑代码段难以用机器识别,只能用专用软件,或人工识别。
例如: 某段代码对学生期末成绩进行排序, 如果程序员没有注释这段代码的功能或含义,那么没有软件可以翻译成"本段代码对学生期末成绩进行排序"。
好的IDE或编写器提供丰富的注释生成和管理功能。这样对团体开发有很大用处,程序员都方便的规范代码,你就不用有这种疑问了。
如 Vistual Studio 2010,CnPack IDE Wizards等。
public boolean onKeyDown(int keyCode, KeyEvent event) {
boolean ret;
if (keyCode == KeyEvent.KEYCODE_BACK) {
SharedPreferences shareddata = this.getSharedPreferences("login",
MODE_PRIVATE);
String right_pass = shareddata.getString("right_pass", null);
if (right_pass != null) {
ret = "true".equals(right_pass);
if (ret) {
this.finish();
}
}
} else {
//cond_1
return super.onKeyDown(keyCode, event);
}
//cond_0
return true;
}