public static void count(String file) {//参数为java文件的绝对路径
try {
FileReader fReader = new FileReader(new File(file));
BufferedReader reader = new BufferedReader(fReader);
String line;
int lineCount = 0;
int codeLineCount = 0;
int classCount = 0;
int methodCount = 0;
while (true) {
line = reader.readLine();
if (line != null) {
lineCount++;//行数
if (line.matches("判断方法头的正则表达式")) {
methodCount++;//方法数
}
if (line.matches("判断类头的正则表达式")) {
classCount++;//类数
}
} else {
break;
}
}
} catch (Exception e) {
System.out.println("exception:" + e.getMessage());
}
}
try {
FileReader fReader = new FileReader(new File(file));
BufferedReader reader = new BufferedReader(fReader);
String line;
int lineCount = 0;
int codeLineCount = 0;
int classCount = 0;
int methodCount = 0;
while (true) {
line = reader.readLine();
if (line != null) {
lineCount++;//行数
if (line.matches("判断方法头的正则表达式")) {
methodCount++;//方法数
}
if (line.matches("判断类头的正则表达式")) {
classCount++;//类数
}
} else {
break;
}
}
} catch (Exception e) {
System.out.println("exception:" + e.getMessage());
}
}
解决方案 »
- 【开发的小疑问】准备开发一个单机版的软件,框架可以用ssh2开发么?
- 如何从ResaultSet中读取一整行,写入DefaultTableModel(在线等,速给分)
- 急求一正则表达式的做法
- JAVA 事件问题,请高手指教!
- 如何获知鼠标点击在JTable的哪一行?
- String 转换为 四则运算式子
- 我的这个JSP为什么在tomcat下找不到自定义的类
- Serializable串行化起到什么作用
- 谁能提供JBULIDER的企业版的下载网站及其注册码,4.0,5.0,6.0都行!!!!!!
- 请教,有没有MOUSE的MOUSEMOVED的例子
- java的类头和method头的正则表达式如何写?
- 继承的一些疑问
try {
FileReader fReader = new FileReader(new File(file));
BufferedReader reader = new BufferedReader(fReader);
String line;
int lineCount = 0;
int codeLineCount = 0;
int classCount = 0;
int methodCount = 0;
while (true) {
line = reader.readLine();
if (line != null) {
lineCount++;//行数
if (line.matches("判断方法头的正则表达式")) {
methodCount++;//方法数
}
if (line.matches("判断类头的正则表达式")) {
classCount++;//类数
}
} else {
break;
}
}
} catch (Exception e) {
System.out.println("exception:" + e.getMessage());
}
}
http://www.ibm.com/developerworks/
这个代码能帮到你么?
/**
@version 1.1 2004-02-21
@author Cay Horstmann
*/import java.util.*;
import java.lang.reflect.*;public class ReflectionTest
{
public static void main(String[] args)
{
// read class name from command line args or user input
String name;
if (args.length > 0)
name = args[0];
else
{
Scanner in = new Scanner(System.in);
System.out.println("Enter class name (e.g. java.util.Date): ");
name = in.next();
} try
{
// print class name and superclass name (if != Object)
Class cl = Class.forName(name);
Class supercl = cl.getSuperclass();
System.out.print("class " + name);
if (supercl != null && supercl != Object.class)
System.out.print(" extends " + supercl.getName()); System.out.print("\n{\n");
printConstructors(cl);
System.out.println();
printMethods(cl);
System.out.println();
printFields(cl);
System.out.println("}");
}
catch(ClassNotFoundException e) { e.printStackTrace(); }
System.exit(0);
} /**
Prints all constructors of a class
@param cl a class
*/
public static void printConstructors(Class cl)
{
Constructor[] constructors = cl.getDeclaredConstructors(); for (Constructor c : constructors)
{
String name = c.getName();
System.out.print(" " + Modifier.toString(c.getModifiers()));
System.out.print(" " + name + "("); // print parameter types
Class[] paramTypes = c.getParameterTypes();
for (int j = 0; j < paramTypes.length; j++)
{
if (j > 0) System.out.print(", ");
System.out.print(paramTypes[j].getName());
}
System.out.println(");");
}
} /**
Prints all methods of a class
@param cl a class
*/
public static void printMethods(Class cl)
{
Method[] methods = cl.getDeclaredMethods(); for (Method m : methods)
{
Class retType = m.getReturnType();
String name = m.getName(); // print modifiers, return type and method name
System.out.print(" " + Modifier.toString(m.getModifiers()));
System.out.print(" " + retType.getName() + " " + name + "("); // print parameter types
Class[] paramTypes = m.getParameterTypes();
for (int j = 0; j < paramTypes.length; j++)
{
if (j > 0) System.out.print(", ");
System.out.print(paramTypes[j].getName());
}
System.out.println(");");
}
} /**
Prints all fields of a class
@param cl a class
*/
public static void printFields(Class cl)
{
Field[] fields = cl.getDeclaredFields(); for (Field f : fields)
{
Class type = f.getType();
String name = f.getName();
System.out.print(" " + Modifier.toString(f.getModifiers()));
System.out.println(" " + type.getName() + " " + name + ";");
}
}
}
核心技术里面的有关反射的代码~