你說的java源代碼是指編譯成的class文件前的java文件。
成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元七星做網(wǎng)站,已為上家服務(wù),為七星各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575
當(dāng)我們運(yùn)行.java文件時(shí),它會(huì)被系統(tǒng)編譯成.class文件,例如Test.java編譯之后就是Test.class,
源文件就是指Test.java文件,
一般部署項(xiàng)目時(shí),有.class文件就可以發(fā)布運(yùn)行了,但是如果想修改這個(gè)系統(tǒng),.class是不能修改的,要有.java文件才能修改
也可以上網(wǎng)去下反編譯軟件,就是能把.class文件大部分還原成.java文件的工具,但不是100%還原,而且如果不是正版的,小心有毒啊,什么的。
1.得到局域網(wǎng)網(wǎng)段,可由自己機(jī)器的IP來確定 (也可以手動(dòng)獲取主機(jī)IP-CMD-ipconfig /all)
2.根據(jù)IP類型,一次遍歷局域網(wǎng)內(nèi)IP地址
JAVA類,編譯之后直接運(yùn)行便可以得到局域網(wǎng)內(nèi)所有IP,具體怎樣使用你自己編寫相應(yīng)代碼調(diào)用便可
代碼如下::
package bean;
import java.io.*;
import java.util.*;
public class Ip{
static public HashMap ping; //ping 后的結(jié)果集
public HashMap getPing(){ //用來得到ping后的結(jié)果集
return ping;
}
//當(dāng)前線程的數(shù)量, 防止過多線程摧毀電腦
static int threadCount = 0;
public Ip() {
ping = new HashMap();
}
public void Ping(String ip) throws Exception{
//最多30個(gè)線程
while(threadCount30)
Thread.sleep(50);
threadCount +=1;
PingIp p = new PingIp(ip);
p.start();
}
public void PingAll() throws Exception{
//首先得到本機(jī)的IP,得到網(wǎng)段
InetAddress host = InetAddress.getLocalHost();
String hostAddress = host.getHostAddress();
int k=0;
k=hostAddress.lastIndexOf(“.”);
String ss = hostAddress.substring(0,k+1);
for(int i=1;i =255;i++){ //對(duì)所有局域網(wǎng)Ip
String iip=ss+i;
Ping(iip);
}
//等著所有Ping結(jié)束
while(threadCount0)
Thread.sleep(50);
}
public static void main(String[] args) throws Exception{
Ip ip= new Ip();
ip.PingAll();
java.util.Set entries = ping.entrySet();
Iterator iter=entries.iterator();
String k;
while(iter.hasNext()){
Map.Entry entry=(Map.Entry)iter.next();
String key=(String)entry.getKey();
String value=(String)entry.getValue();
if(value.equals(“true”))
System.out.println(key+“--”+value);
}
}
class PingIp extends Thread{
public String ip; // IP
public PingIp(String ip){
this.ip=ip;
}
public void run(){
try{
Process p= Runtime.getRuntime()。exec (“ping ”+ip+ “ -w 300 -n 1”);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
//讀取結(jié)果行
for (int i=1 ; i 7; i++)
input.readLine();
String line= input.readLine();
if (line.length() 17 || line.substring(8,17)。equals(“timed out”))
ping.put(ip,“false”);
else
ping.put(ip,“true”);
//線程結(jié)束
threadCount -= 1;
}catch (IOException e){}
}
}
}
1. java2s
這個(gè)網(wǎng)站非常好,分成三大類,分別是Example 、Products 、 Articles ,每個(gè)大類下又分別設(shè)許多小類,還有搜索功能,這樣查找起來非常方便。。比如,如果要學(xué)習(xí)SWT/JFace,只要把Example下的SWT JFace Eclipse 研究一下也就可以了。另外,這個(gè)網(wǎng)站還有JavaScript DHTML 、 C# / C Sharp 、 C / ANSI-C 、 SQL / MySQL 等類??傊浅:?。
2. codeZoo
這是O'Reily旗下的,除了Java之外,還有Ruby、Python。
3. Java學(xué)習(xí)源代碼檢索系統(tǒng)
難得看見國(guó)產(chǎn)的,好歹也要支持一下,分類也算清楚。
4. Koders
是個(gè)綜合查詢的網(wǎng)站,不過它好像是從代碼中查找關(guān)鍵詞,包含的語言挺多的。
5. Resources for Java server-side developers
確切的說,它是一個(gè)資源收集的網(wǎng)站,代碼查詢并不多。不過它分類相當(dāng)細(xì),如Articles、Books、Examples、Extensions、Frameworks等類,你可以輸入Spring或Hibernate作為關(guān)鍵詞搜索一下看看。
-----
Java 程序員必須收藏的資源大全
古董級(jí)工具
這些工具伴隨著Java一起出現(xiàn),在各自輝煌之后還在一直使用。
Apache Ant:基于XML的構(gòu)建管理工具。
cglib:字節(jié)碼生成庫(kù)。
GlassFish:應(yīng)用服務(wù)器,由Oracle贊助支持的Java EE參考實(shí)現(xiàn)。
Hudson:持續(xù)集成服務(wù)器,目前仍在活躍開發(fā)。
JavaServer Faces:Mojarra是JSF標(biāo)準(zhǔn)的一個(gè)開源實(shí)現(xiàn),由Oracle開發(fā)。
JavaServer Pages:支持自定義標(biāo)簽庫(kù)的網(wǎng)站通用模板庫(kù)。
Liquibase:與具體數(shù)據(jù)庫(kù)獨(dú)立的追蹤、管理和應(yīng)用數(shù)據(jù)庫(kù)Scheme變化的工具。
2.構(gòu)建工具
構(gòu)建及應(yīng)用依賴關(guān)系處理工具。
Apache Maven:Maven是一款聲明式構(gòu)建及依賴管理工具,采用約定優(yōu)于配置方式進(jìn)行管理。相對(duì)Apache Ant更推薦使用Maven,前者采用了過程式管理,維護(hù)相對(duì)困難。
Bazel:來自Google的構(gòu)建工具,可以快速、可靠地構(gòu)建代碼。
Gradle:使用Groovy(非XML)進(jìn)行增量構(gòu)建,可以很好地與Maven依賴管理配合工作。
需要這些學(xué)習(xí)資料和工具的可以自己下載哦