关于生成get set 方法

okok165124 2009-02-12 11:29:21
以前的做法是--有个bean 有个form
bean中 声明3个变量,自动生成3对get set方法。
form中 声明4个变量,自动生成4对get set 方法。

最近看到一种写法是
bean中不变,还是原来这个写。

form中 只声明个bean的对象比如 A a = new A(); 然后生成a的getset方法。 接着下面就是4对getset方法,根本没有变量。
问题是,这4对是自动生成的吗?how? 而且这4对 get 在一起,set在一起,不像原来自动生成的 一对挨着。

PS:这4对中,有3对方法体都调用a的变量。


谢谢
...全文
590 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
龙扬天 2009-02-20
  • 打赏
  • 举报
回复
这种写法比较危险。

从代码讲,试想重写equals、toString的时候那个a就需要特别注意,降低了代码的扩展性和安全性。

从代码规则讲,form和bean所代表的意义是截然不同的,这种写法明显违背层之间的独立性。
也就是说,bean中加了一个form之后,就违反了三层结构的规则,给今后维护带来不必要的麻烦。
javalead 2009-02-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 froole 的回复:]
这种写法比较危险。

从代码讲,试想重写equals、toString的时候那个a就需要特别注意,降低了代码的扩展性和安全性。

从代码规则讲,form和bean所代表的意义是截然不同的,这种写法明显违背层之间的独立性。
也就是说,bean中加了一个form之后,就违反了三层结构的规则,给今后维护带来不必要的麻烦。
[/Quote]


不要太依赖于工具
okok165124 2009-02-19
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 dollyn 的回复:]
没有变量好像不行吧,帮顶下。
[/Quote]

可以肯定的是,不用变量, form中的方法体都是调用a的,是可以用的。不影响传值。


恩,周一结贴。结论就是手动填写了。
okok165124 2009-02-19
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 imasmallbird 的回复:]
我看了楼上的,但是理解错了,我看见你用红色的着重标了一下,“点那项”

如果不声明变量,那么没有选项会为你直接生成get/set方法,因为他无法知道你的get/set后面需要接
什么属性名,它还没有那么智能~~

如果有人知道望告知[/Quote]

恩,我要是form 再起个名字就好了。。。失误失误。
霜之哀伤 2009-02-19
  • 打赏
  • 举报
回复
没有变量好像不行吧,帮顶下。
imasmallbird 2009-02-19
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 okok165124 的回复:]
引用 9 楼 imasmallbird 的回复:
引用 7 楼 okok165124 的回复:
没贴上 代码 再来一次


关键是没有变量啊。。。费解

费解。。。


不知道是不是误导哈。
我猜测,我想要的答案大致是 :

在form中 上来先有

Java code A a = new A();
public A getA() {
return a;
}


public void setA(A a) {
this.a = a;
}


这是鼠标划上 a 右键,菜单出来了…
[/Quote]

我看了楼上的,但是理解错了,我看见你用红色的着重标了一下,“点那项

如果不声明变量,那么没有选项会为你直接生成get/set方法,因为他无法知道你的get/set后面需要接
什么属性名,它还没有那么智能~~

如果有人知道望告知
  • 打赏
  • 举报
回复
二楼的...顶下
imasmallbird 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 okok165124 的回复:]
没贴上 代码 再来一次


关键是没有变量啊。。。费解

费解。。。


不知道是不是误导哈。
我猜测,我想要的答案大致是 :

在form中 上来先有

Java code A a = new A();
public A getA() {
return a;
}



public void setA(A a) {
this.a = a;
}



这是鼠标划上 a 右键,菜单出来了,点哪项能 自动生成A中的getset方法,就是像

Java code
publ…
[/Quote]

你是想问点那项生成一个属性的set/get方法??

在你的java文件中 alt+shift+s 选择 Generate Getters and Setters
或者右键 source 选择 Generate Getters and Setters
之后 就可以对你想要生成的属性进行选择了~~
okok165124 2009-02-18
  • 打赏
  • 举报
回复
早上顶一下
okok165124 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 imasmallbird 的回复:]
引用 7 楼 okok165124 的回复:
没贴上 代码 再来一次


关键是没有变量啊。。。费解

费解。。。


不知道是不是误导哈。
我猜测,我想要的答案大致是 :

在form中 上来先有

Java code A a = new A();
public A getA() {
return a;
}


public void setA(A a) {
this.a = a;
}


这是鼠标划上 a 右键,菜单出来了,点哪项能 自动生成A中的getset方法…
[/Quote]


您肯定没看前几楼, 这方法我当然知道,举例中的A类中都是这么来的getset

我的意思是不声明变量就出getset, 用你的方法,不声明变量能 get set出来吗?
okok165124 2009-02-13
  • 打赏
  • 举报
回复
没贴上 代码 再来一次


关键是没有变量啊。。。费解

费解。。。


不知道是不是误导哈。
我猜测,我想要的答案大致是 :

在form中 上来先有
 A a = new A();
public A getA() {
return a;
}



public void setA(A a) {
this.a = a;
}

这是鼠标划上 a 右键,菜单出来了,点哪项能 自动生成A中的getset方法,就是像

public void setStatus(String status) {
a.setStatus(status);
}
public String getStatus() {
return a.getStatus();
}


okok165124 2009-02-13
  • 打赏
  • 举报
回复
关键是没有变量啊。。。费解

费解。。。


不知道是不是误导哈。
我猜测,我想要的答案大致是 :

在form中 上来先有
 A a = new A();
public A getA() {
return a;
}



public void setA(A a) {
this.a = a;
}

这是鼠标划上 a 右键,菜单出来了,点哪项能 自动生成A中的getset方法,就是像

public void setStatus(String status) {
a.setStatus(status);
}
public String getStatus() {
return a.getStatus();
}



feichang gan xie
海诗美妆 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 okok165124 的回复:]
引用 1 楼 froole 的回复:
这种写法比较危险。

从代码讲,试想重写equals、toString的时候那个a就需要特别注意,降低了代码的扩展性和安全性。

从代码规则讲,form和bean所代表的意义是截然不同的,这种写法明显违背层之间的独立性。
也就是说,bean中加了一个form之后,就违反了三层结构的规则,给今后维护带来不必要的麻烦。


其实是为了更清晰层次的。这么做能让bean更接近数据层,form更接近表示层

之所以传值…
[/Quote]

只要写好变量和相应的JavaDoc,
getset的用IDE自动生成,并不费劲。
lsw_19880625 2009-02-12
  • 打赏
  • 举报
回复
同意二楼的!
okok165124 2009-02-12
  • 打赏
  • 举报
回复
看来只有手动了
okok165124 2009-02-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 froole 的回复:]
这种写法比较危险。

从代码讲,试想重写equals、toString的时候那个a就需要特别注意,降低了代码的扩展性和安全性。

从代码规则讲,form和bean所代表的意义是截然不同的,这种写法明显违背层之间的独立性。
也就是说,bean中加了一个form之后,就违反了三层结构的规则,给今后维护带来不必要的麻烦。
[/Quote]

其实是为了更清晰层次的。这么做能让bean更接近数据层,form更接近表示层

之所以传值是为了把form中的值 传到bean中,以前是手动写方法,这回放到form中直接实时复制form与bean,然后用bean 传参到数据库。

就是不明白为什么 没有变量还可以setget 貌似自动生成的,好几十对呢,自己写得累死
海诗美妆 2009-02-12
  • 打赏
  • 举报
回复
这种写法比较危险。

从代码讲,试想重写equals、toString的时候那个a就需要特别注意,降低了代码的扩展性和安全性。

从代码规则讲,form和bean所代表的意义是截然不同的,这种写法明显违背层之间的独立性。
也就是说,bean中加了一个form之后,就违反了三层结构的规则,给今后维护带来不必要的麻烦。

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧