在我们使用eclipse进行开发的时候经常会使用到eclipse自己主动生成getter和setter的功能,然后大多情况下eclipse为我们生成的getter和setter都是无法在项目中使用的。还须要我们自己手动改动。

比方以下这个类。我使用了eclipse的自己主动生成getter和setter的功能而且选择了加入凝视。终于的类为例如以下

public class User {
//username
private String name; /**
* @return the name
*/
public String getName() {
return name;
} /**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
} }

可是我们想要的不是这样一个凝视。希望可以产生例如以下的代码凝视

public class User {
// username
private String name; /**
* 返回 username
*
* @return username
*/
public String getName() {
return name;
} /**
* 设置 username
*
* @param name
* username
*/
public void setName(String name) {
this.name = name;
} }

怎样来做呢?

如今我就来说明一下我的改动方式。

1、第一步是查找到eclipse自己主动生成getter和setter的类文件。我给大家找好了在eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class

2、我们改动这个class的源代码然后编译替换。

这个class源代码一般在相应的eclipse\plugins\org.eclipse.jdt.ui.source__xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.java

我的eclipse版本号为Version: 4.3.1

我把已经改动好和编译好的文件传上来。

在你们使用这个的时候记得先把原始jar进行备份。以免悲剧。

关于class的替换过程我还是简单说下。免得有的同学不明确。

1、直接用压缩文件打开eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar

2、找到org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class

3、将GetterSetterUtil.class替换为我们自己改动好的GetterSetterUtil.class(eclipse没有执行的状态下才干替换)

用法

1、在eclipse中window-》preferences->java->code style->code templates

2、找到comments

3、 展开找到getters点击Edit输入例如以下内容

/**
* 返回 bare_field_comment
*
* @return bare_field_comment
*/

4、找到setters 点击edit 输入例如以下内容

/**
* 设置 bare_field_comment
*
* @param ${param}
* bare_field_comment
*/

5、保存

bare_field_comment :是用我们属性上面的这个凝视来替换。

假设属性上面没用凝视的话。那么会直接输出bare_field_comment

使用

public class User {
// username
private String name;
}

在我们自己主动生成getter和setter的时候相同选中 generate method comments 假设属性上面有单行凝视那么这个凝视就会被我们使用到。

终于生成效果例如以下

public class User {
// username
private String name; /**
* 返回 username
*
* @return username
*/
public String getName() {
return name;
} /**
* 设置 username
*
* @param name
* username
*/
public void setName(String name) {
this.name = name;
}
}

注意的是

多行凝视是不被识别的。这个是有益屏蔽掉的。

下载地址

http://download.csdn.net/detail/kongguoan/7694553

eclipse 自己主动为getter和setter加入中文凝视的更多相关文章

  1. [图解教程]Eclipse不可不知的用法之一:自动生成Getter、Setter和构造方法

    [图解教程]Eclipse不可不知的用法之一:自动生成Getter.Setter和构造方法 关键词:Getters and Setters.getter和setter方法.Constructor us ...

  2. Eclipse下无法解析注解:@Getter和@Setter

    接触到一个项目,java bean全部使用@Getter和@Setter来偷懒,我用getXXX方法,结果发现编译失败,没法用.后来看到另一个项目也是用了@Getter和@Setter注解,但人家用的 ...

  3. 简化Getter 与 Setter 的插件 Lombok

    参考文档:https://www.jianshu.com/p/365ea41b3573 第一步:添加依赖 <dependency> <groupId>org.projectlo ...

  4. 别再写getter,setter方法了,用Lombok来简化你的代码吧

    前言 在实际开发中,有些代码是重复的.IDE一键生成的,不写不行,写了又觉得代码太臃肿,不美观.如果你也有这种体会,那么,请使用Lombok插件吧,真的非常好用.Lombok的使用也非常简单,都是各种 ...

  5. 基于 getter 和 setter 撸一个简易的MVVM

    Angular 和 Vue 在对Angular的学习中,了解到AngularJS 的两个主要缺点: 对于每一次界面时间,Ajax 或者 timeout,都会进行一个脏检查,而每一次脏检查又会在内部循环 ...

  6. scala getter and setter

    package exp { object Main { def main(args: Array[String]): Unit = { B.name ="Fred"; printl ...

  7. 由Vue引发的getter和setter思考

    公司的新项目决定使用Vue.js来做,当我打印出Vue实例下的data对象里的属性时,发现了一个有趣的事情: 它的每个属性都有两个相对应的get和set方法,我觉的这是多此一举的,于是去网上查了查Vu ...

  8. 为什么要设置getter和setter?

    面向对象语言中,通常把属性设置为私有,然后添加getter和setter方法来访问.有人说,这本质上和设置属性为公有没有区别,干脆把属性public算了.也有人反驳,这样做破坏了封装.但是,破坏了封装 ...

  9. javascript权威指南笔记--javascript语言核心(五)--getter和setter属性

    getter和setter属性: var p = { x:1.0, y:1.0, get r(){ return Math.sqrt(this.x*this.x + this.y * this.y); ...

随机推荐

  1. FusionCharts之我用

    fusioncharts:(此控件需flash支持) 介绍:http://baike.baidu.com/link?url=SOheR7sQlb93S5TqYmeI7FhtJ0V9ABNwH6OsAa ...

  2. oracle数据库过期

    本文转载自http://soft.chinabyte.com/database/6/12320006.shtml[来源:比特网 作者:悠虎] 由于Oracle11G的新特性所致,经常会遇到使用sqlp ...

  3. [JavaScript] Uncaught TypeError: Method get Set.prototype.size called on incompatible receiver

    在对Set进行方法扩展的时候,无法覆盖size属性 情景:定义一个SingletonSet,继承自Set,size只能为1,并且不能add和remove //首先是extend函数 var exten ...

  4. Lazarus 日志工具 MultiLog

    MultiLog是一种同时以灵活性和低开销为目标的日志系统.顾名思义,它可用于将日志实例到多个目标,如文本文件.可视控件或其他应用程序.添加新的日志目标使用两个方法就可以实现了,其中一个方法是可选的. ...

  5. HDU_1242_Rescue

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1242 大意:迷宫搜索,'#'代表墙,'.'代表路,'x'代表守卫,每移动1格用1秒,杀死守卫用1秒,ang ...

  6. vue(数据改变,DOM不渲染问题)

    1.组件内部,属性值地址空间内引用地址改变,DOM不能渲染. 问题举例:this.items = [[],[],[],[]] 1.在items 中,修改任意一项数组中的值,DOM是不会更新的,2.解决 ...

  7. 苹果和虫子问题C++

    如果需要转载,请注明出处:http://www.cnblogs.com/wongyi/p/8205305.html 最近在给小朋友补奥数课,顺便看了几道题目,觉得写出来会比较集中,整理一下哈哈哈. 问 ...

  8. HDU_5783_DivideTheSequence

    HDU_5783_DivideTheSequence  点击打开链接 题意: 生成尽量多的连续的子串,且子串的前缀和大于等于0,输出符合题意的子串的数量. 这题目是参加四月份的个人训练赛遇到的,挺水的 ...

  9. Python使用Flask框架,结合Highchart,搭配数据功能模块处理csv数据

    参考链接:https://www.highcharts.com.cn/docs/data-modules 1.javascript代码 var csv = document.getElementByI ...

  10. Vue.Draggable实现拖拽效果(快速使用)

    1.下载包:npm install vuedraggable 配置:package.json "dependencies": { "element-ui": & ...