編程生活

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評論 :: 0 Trackbacks
          代碼抄自eclipse.jdt的help,主要是每次都要打開Help太麻煩了,而將其抄進來,以便下次使用
          AST ast = AST.newAST(AST.JLS3); //支持JDT5.0的
          CompilationUnit unit = ast.newCompilationUnit();
          PackageDeclaration packageDeclaration = ast.newPackageDeclaration();
          packageDeclaration.setName(ast.newSimpleName("example"));
          unit.setPackage(packageDeclaration);
          ImportDeclaration importDeclaration = ast.newImportDeclaration();
          QualifiedName name =
          ast.newQualifiedName(
          ast.newSimpleName("java"),
          ast.newSimpleName("util"));
          importDeclaration.setName(name);
          importDeclaration.setOnDemand(true);
          unit.imports().add(importDeclaration);
          TypeDeclaration type = ast.newTypeDeclaration();
          type.setInterface(false);
          type.modifiers().add(ast.newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
          type.setName(ast.newSimpleName("HelloWorld"));
          MethodDeclaration methodDeclaration = ast.newMethodDeclaration();
          methodDeclaration.setConstructor(false);
          List modifiers = methodDeclaration.modifiers();
          modifiers.add(ast.newModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD));
          modifiers.add(ast.newModifier(Modifier.ModifierKeyword.STATIC_KEYWORD));
          methodDeclaration.setName(ast.newSimpleName("main"));
          methodDeclaration.setReturnType2(ast.newPrimitiveType(PrimitiveType.VOID));
          SingleVariableDeclaration variableDeclaration = ast.newSingleVariableDeclaration();
          variableDeclaration.setType(ast.newArrayType(ast.newSimpleType(ast.newSimpleName("String"))));
          variableDeclaration.setName(ast.newSimpleName("args"));
          methodDeclaration.parameters().add(variableDeclaration);
          org.eclipse.jdt.core.dom.Block block = ast.newBlock();
          MethodInvocation methodInvocation = ast.newMethodInvocation();
          name =
          ast.newQualifiedName(
          ast.newSimpleName("System"),
          ast.newSimpleName("out"));
          methodInvocation.setExpression(name);
          methodInvocation.setName(ast.newSimpleName("println"));
          InfixExpression infixExpression = ast.newInfixExpression();
          infixExpression.setOperator(InfixExpression.Operator.PLUS);
          StringLiteral literal = ast.newStringLiteral();
          literal.setLiteralValue("Hello");
          infixExpression.setLeftOperand(literal);
          literal = ast.newStringLiteral();
          literal.setLiteralValue(" world");
          infixExpression.setRightOperand(literal);
          methodInvocation.arguments().add(infixExpression);
          ExpressionStatement expressionStatement = ast.newExpressionStatement(methodInvocation);
          block.statements().add(expressionStatement);
          methodDeclaration.setBody(block);
          type.bodyDeclarations().add(methodDeclaration);
          unit.types().add(type);
          posted on 2007-11-06 12:14 wilesun 閱讀(1365) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 连城县| 旬阳县| 都安| 诏安县| 米脂县| 宁远县| 绥滨县| 巴里| 洪雅县| 玛沁县| 黑山县| 乌兰浩特市| 永年县| 屯昌县| 临夏县| 神池县| 荣成市| 邵阳县| 上高县| 汕尾市| 桑植县| 绵竹市| 武定县| 石阡县| 台山市| 鄂托克旗| 依兰县| 克山县| 武定县| 肇东市| 高碑店市| 玉门市| 通山县| 闻喜县| 桓台县| 衡山县| 和田县| 邯郸县| 内丘县| 海林市| 瓦房店市|