<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-84  評(píng)論-56  文章-0  trackbacks-0

    Completion features

    Feature list isn't complete, this page is subject to change.

    There are three completion types:

    Logical nameShortcut
    Basic Ctrl+Space
    Smart (SmartType) Ctrl+Shift+Space
    Class Name Ctrl+Alt+Space

    Pressing the same shortcut twice results in 'second' completion, which may give more variants.

    The New! mark means a feature is available in Maia only.

    All languages

    You may choose item in completion list not only with Enter, but also with variety of other keys: spacedotcolonsemicolon, '(' etc. Basically this will result in inserting that character after the completed identifier, but sometimes more will be done. For example, finishing Java method call with '(' will, of course, insert also ')'.

    Choosing item with Tab has special meaning. In this case, if you are inside identifier, it will be overwritten completely instead of just inserting the item string into caret position.

    Class Name completion works everywhere and typically displays all class names that are accessible from the current location. On second invocation it displaysall the classes that may become visible if you change their access modifiers or add necessary module dependencies.

    New! If you don't like some suggested classes and you don't want to see it anymore, you may easily exclude it from import and completion.

    Java

    Basic

    • Context-specific reference and keyword completion, inserts parentheses, semicolons etc. where necessary.
    • Variable/method name suggestion based on type name, super methods and unresolved references in context file
    • Getter/setter name completion based on class fields
    • Property name/file path in string literal
    • Second:
      • Inaccessible members (e.g. private fields) are shown.
      • If prefix starts with an uppercase letter, shows all classes (like Class Name completion). Suggested in first completion invocation if there were no matching variants.

    Smart

    • Performs reference variants filtering based on expected type. If say an int is expected, only the variables/fields/methods of int type will be suggested.
    • New! If there is a one-element array of expected type (like the one created automatically to communicate with inner classes), and its name is say ref, then ref[0] is completed.
    • After new suggests all the classes descending from the expected type, inserts parentheses, if the selected class is abstract, will generate anonymous class body and suggest methods to implement.
    • After throw new suggests only the runtime exceptions merged with those explicitly declared in throws-clause.
    • In Javadoc throws tag suggests exceptions from method's throws-clause.
    • After catch suggests the exceptions that are thrown inside try.
    • After instanceof suggests inheritors of the checked expression type.
    • When Class<? extends X> is expected, suggests Class<Y> for all Y inheriting from X.
    • Completes generic parameters where missing: List<String> l = new ArrayList<|>();
    • Inserts explicit method type parameters where necessary: collect(Collections.emptyLis|) where collect expects List<String>
    • Suggests to cast to expected type after opening parenthesis: String s = (|
    • New! When calling a method or constructor with matching signature (e.g. a super method), fills all the parameters immediately.
    • Suggests live templates with statically-determineable type and 'Smart completion' checkbox on.
    • Searches expected class's static members for matching values: Singleton s = | will result in Singleton s = Singleton.getInstance();
    • Searches method containing class for primitive constant fields which may suit.
    • New! Analyzes dataflow in search for typecasts and *instanceof*s and suggests to cast expressions to expected type where possible.
    • Keywords: classthis (possibly qualified), truefalsenull
    • Second:
      • Iterates over the visible methods/fields to check if their return value contains members of expected type, resulting in chained calls like getModule().getProject(). Prefix matching is done on both the first and the second member in chain (so you may get this result from both getMo| and getPro|).
      • Converts between arrays and lists when you have one in context and need another.
      • Adds array member access when you have an array of expected type: int a = | will result in int a = intArray[|].

    Both Basic & Smart

    • New! When completing a qualified expression analyzes dataflow and checks if there are any typecasts or *instanceof*s concerning the qualifier. If yes, suggests the variants based on the casted type and inserts the cast automatically.
    • New! In debugger's Evaluate Expression dialog does similar casting to runtime type. When expression is simple variable/field access, it's done immediately, when it involves method calls, on second completion.
    • If all variants are method overloads with the same name, lookup isn't shown, method name is inserted with caret placed inside parentheses.
    • When completing a method with boolean return type, you may finish completion with '!' and the call result will be negated.
    • You may finish completion with Complete Current Statement action (Ctrl+Shift+Enter), which will attempt to syntactically correct your code, e.g. wrap the following expression into parentheses if you've chosen a method call.

    Class Name

    • After new also inserts parentheses for constructor invocation.

    Groovy

    Basic

    • Context-specific reference and keyword completion, inserts parentheses, semicolons etc. where necessary.
    • Runtime members:
      • DefaultGroovyMethods
      • SwingBuilder
      • New! Grails domain class & controller dynamic properties and methods
      • Gant script dynamic methods (e.g. depends, target) and properties (e.g. includeTargets, message)

    Smart

    • New! After new in variable initializer with known type suggests possible inheritors: CharSequence c = new |

    Labels

     
    (None)
    posted on 2009-10-28 09:19 憶風(fēng) 閱讀(542) 評(píng)論(1)  編輯  收藏 所屬分類(lèi): IDE

    評(píng)論:
    # re: IntelliJ IDEA Completion features 2009-10-30 08:29 | shangqiuyuda
    你的英語(yǔ)提高了不少呀?。。?nbsp; 回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 国产精品久久亚洲不卡动漫| 国产v片免费播放| 久久久久久毛片免费播放 | 亚洲 自拍 另类小说综合图区| 114一级毛片免费| 国产成人免费在线| h视频在线观看免费完整版| 亚洲精品视频在线观看免费| 69国产精品视频免费| 中文字幕免费观看| 99久久久精品免费观看国产| 国产成在线观看免费视频| 好男人www免费高清视频在线| 国内精品免费视频自在线| 爽爽日本在线视频免费| 免费v片视频在线观看视频| 亚洲欧洲精品成人久久奇米网 | 四虎永久在线精品免费观看地址| 四虎1515hm免费国产| 亚洲国产成人久久精品99| 亚洲欧洲精品成人久久奇米网 | 无码久久精品国产亚洲Av影片 | 又粗又黄又猛又爽大片免费| 亚洲成年看片在线观看| 亚洲线精品一区二区三区影音先锋| 亚洲熟妇无码AV在线播放| 久久91亚洲精品中文字幕| 亚洲精品美女在线观看| 亚洲乱码无人区卡1卡2卡3| 黄色网址在线免费观看| a级特黄毛片免费观看| 免费观看国产网址你懂的| 在线观看无码的免费网站| 一本色道久久88综合亚洲精品高清| 国产亚洲精品国看不卡| 婷婷精品国产亚洲AV麻豆不片| 亚洲国产av一区二区三区丶| 亚洲国产成人久久综合| 久久久精品国产亚洲成人满18免费网站 | 久久亚洲精品无码aⅴ大香| 亚洲中文字幕一二三四区苍井空 |