編程生活

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            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 閱讀(1363) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 宝清县| 光山县| 阜新| 饶河县| 乌什县| 绍兴市| 鹤峰县| 石棉县| 玛曲县| 高雄市| 西贡区| 宜宾县| 垦利县| 西丰县| 荃湾区| 平果县| 太仓市| 山丹县| 金坛市| 略阳县| 涟水县| 沙湾县| 扬中市| 平乐县| 平陆县| 来凤县| 宾川县| 杭锦后旗| 仪陇县| 井陉县| 海安县| 澄迈县| 江达县| 民丰县| 石泉县| 芒康县| 青神县| 汤阴县| 乌审旗| 长阳| 绥阳县|