135-1821-9792

如何java代码分析 java代码讲解

java代码分析

亲测:结果为空

创新互联自2013年创立以来,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元天津做网站,已为上家服务,为天津各地企业和个人服务,联系电话:13518219792

原因,System.exit(0)将当前JVM停止掉了。这个方法的作用就是将当前程序停止,参数为0表示正常退出,参数为1表示非正常退出。

JVM都停止了,后面的程序自然运行不了。所以finally里的语句根本没走到。

java源代码分析 实在是不太会,求高手教教我。

package test2;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.util.HashMap;

import java.util.Map;

import java.util.Set;

public class JavaCodeAnalyzer {

public static void analyze(File file) throws IOException{

//FileOutputStream fos = new FileOutputStream("F;"+File.separator+"result.txt");

if(!(file.getName().endsWith(".txt")||file.getName().endsWith(".java"))){

System.out.println("输入的分析文件格式不对!");

}

InputStream is= new FileInputStream(file);

BufferedReader br= new BufferedReader(new InputStreamReader(is));

String temp;

int count=0;

int countSpace=0;

int countCode=0;

int countDesc=0;

MapString, Integer map = getKeyWords();

while((temp=br.readLine())!=null){

countKeys(temp, map);

count++;

if(temp.trim().equals("")){

countSpace++;

}else if(temp.trim().startsWith("/*")||temp.trim().startsWith("//")){

countDesc++;

}else{

countCode++;

}

}

System.out.printf("代码行数:"+countCode+"占总行数的%4.2f\n",(double)countCode/count);

System.out.printf("空行数:"+countSpace+"占总行数的%4.2f\n",(double)countSpace/count);

System.out.printf("注释行数:"+countDesc+"占总行数的%4.2f\n",(double)countDesc/count);

System.out.println("总行数:"+count);

System.out.println("出现最多的5个关键字是:");

System.out.println("");

System.out.println("");

System.out.println("");

System.out.println("");

System.out.println("");

}

public static void main(String[] args) {

getKeyWords();

File file = new File("F://Test.java");

try {

analyze(file);

} catch (IOException e) {

// TODO 自动生成 catch 块

e.printStackTrace();

}

}

public static MapString,Integer getKeyWords(){

MapString,Integer map = new HashMapString, Integer();

String[]keywords = {"abstract","assert","boolean","break","byte","case","catch","char","class","continue","default","do","double","else","enum","extends","final","finally","float","for","if","implements","import","instanceof","int","interface","long","native","new","package","private","protected","public","return","    strictfp","short","static","super","    switch","synchronized","this","throw","throws","transient","try","void","volatile","while","goto","const"};

for(String s:keywords){

map.put(s, 0);

}

return map;

}

public static void countKeys(String s,MapString,Integer map){

SetString keys = map.keySet();

for(String ss:keys){

if(s.indexOf(ss)!=-1){

map.put(ss, map.get(ss)+1);

}

}

}

}

上班没啥时间了,还有点没写完,你在想想。

我是java初学者,拿到一个做好的java项目代码,我该如何分析这个代码结构和采用了什么java框架技术。

1、拿到代码查看项目当中是否有readme这样的文件,如果没有查看是否有文档之类的

2、代码当中没有文档,那么就想你的同事或者其他人要这个框架的介绍或者资料

3、先请教别人这个框架的大体思路

4、自己独立去按照文档或者其他人说的思路去看代码

5、不懂的地方全部记录下面,一次行去问,有的时候很多问题在你看到后面的东西的时候就自然明白了

6、看懂了代码之后自己尝试着写一个,看自己的理解是否正确就这么多了。


分享文章:如何java代码分析 java代码讲解
标题网址:http://kswsj.com/article/doggpoi.html

其他资讯



Copyright © 2009-2022 www.kswsj.com 成都快上网科技有限公司 版权所有 蜀ICP备19037934号