在我们使用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. 在Resource中使用x:Bind

    Build2015上,MS热情高涨的演示了x:Bind,一种新的Binding方式,新的方式有如下优点: 1更好的性能(内存占用,CPU占用) 2BuildTime的Binding 具体在Channe ...

  2. jsp学习笔记 - 内置对象 config

    1.将页面保存在 WEB-INF文件夹下是最安全的,一般不可见 可以通过映射路径来进行访问 2.通过config对象可以取得初始化的配置参数 String dbDriver = config.getI ...

  3. UI开发模式-容器模式

    UI开发模式-容器模式 通用容器: 配置容器.

  4. Django框架 之基础入门

    django是一款MVT的框架 一.基本过程 1.创建项目:django-admin startproject 项目名称 2.编写配置文件settings.py(数据库配置.时区.后台管理中英文等) ...

  5. Functional language 函数

    一.什么是函数式语言?       函数式语言一类程序设计语言,是一种非冯·诺伊曼式的程序设计语言.函数式语言主要成分是原始函数.定义函数和函数型.这种语言具有较强的组织数据结构的能力,可以把某一数据 ...

  6. BZOJ 1058: [ZJOI2007]报表统计 multiset + 卡常

    Code: #include<bits/stdc++.h> #define maxn 600000 #define inf 1000000000 using namespace std; ...

  7. Python字符的转义

    参考原文 廖雪峰Python教程 字符的转义 字符串是以单引号' 或双引号" 括起来的任意文本,比如'abc',"xyz".''或""本身只是一种表示 ...

  8. 洛谷——P2590 [ZJOI2008]树的统计(树链剖分模板练手)

    P2590 [ZJOI2008]树的统计 I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问 ...

  9. The content of element type "resultMap" must match ...

    mybatis中的mapper文件错误 ①错误原因: <resultMap>标签中需要按照一下顺序编写: <id> <result> <association ...

  10. PHP 锁机制

    应用环境 解决高并发,库存为负数的情况 阻塞模式 如果其他进程已经加锁文件,当前进程会一直等其他进程解锁文件后继续执行 flock($fp, LOCK_EX) // 文件锁 非阻塞模式 如果其他进程已 ...