在我们使用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. axios 正确打开方式

    一.安装1. 利用npm安装npm install axios --save2. 利用bower安装bower install axios --save3. 直接利用cdn引入<script s ...

  2. vue具体页面跳转传参方式

    1.写数据,可以使用“.”,”[]”,以及setItems(key,value);3种方式. 例如: localStorage.name = proe;//设置name为" proe &qu ...

  3. 呼啦圈(keyframes和transform结合)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. angular 琐碎

    1.controller 只要在一个地方引用就可以了,路由的时候不用指定controller了,在HTML中指定就可以了,否则会初始化两次 2.angular 模块间的服务无层级关系,相互可见.本质是 ...

  5. 3星|《哈佛商业评论》201708:IT项目风险之大远超你想象

    老牌管理学杂志.本期干货偏少,我评3星. 以下是本期一些信息的摘抄: 1:当我们调查被关闭餐馆周边的犯罪规律时,我们发现了与关闭药房同样的现象:被关闭餐馆周围财产犯罪和车内财物偷盗犯罪行为立即出现了上 ...

  6. canvas一周一练 -- canvas绘制立体文字(2)

    运行效果: <!DOCTYPE html> <html> <head> </head> <body> <canvas id=" ...

  7. PHP数据乱码

    本文主要总结下PHP数据乱码的解决方案 要点:多个不同文件系统里一定要统一编码 [注意] (1)HTML编码与MySQL编码一致: (2)PHP编码与MySQL编码一致: (3)header头发送字符 ...

  8. java protostuff 序列化反序列化工具

    protostuff是由谷歌开发的一个非常优秀的序列化反序列化工具 maven导入包: <dependency> <groupId>io.protostuff</grou ...

  9. vue的自定义指令控制菜单权限

    用户登录后,选择子节点,节点中含有多个菜单,可以根据后台返回的权限数据进行权限控制 在vue上挂载自定义指令方法,根据后台返回权限移除相应节点 import Cookies from "js ...

  10. iOS多媒体框架介绍

    媒体层 媒体层包含图形技术.音频技术和视频技术,这些技术相互结合就可为移动设备带来最好的多媒体体验,更重要的是,它们让创建外观音效俱佳的应用程序变得更加容易.您可以使用iOS的高级框架更快速地创建高级 ...