編程生活

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            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)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 昌乐县| 盘锦市| 呼玛县| 岑溪市| 马龙县| 新田县| 桦川县| 麟游县| 屯昌县| 雷山县| 任丘市| 南漳县| 仪陇县| 都匀市| 岚皋县| 临夏县| 永寿县| 奉节县| 渝北区| 文成县| 东宁县| 岐山县| 荥阳市| 呼和浩特市| 梨树县| 连山| 通城县| 都安| 上犹县| 克拉玛依市| 吉隆县| 安达市| 常德市| 凤翔县| 石景山区| 高青县| 万州区| 揭东县| 陕西省| 吴旗县| 石景山区|