2013-06-23 3 views
1

Есть ли где-нибудь в любом из классов SE 6 или SE 7 поле, которое не является окончательным, то есть которое можно установить напрямую?Есть ли не конечное поле в Java SE 6 или Java SE 7

Я работаю над привязками с другого языка (Haskell) к Java, и я ищу этот конкретный случай, чтобы проверить, работает ли моя реализация правильно.

Меня не интересует вопрос о том, нужно ли напрямую обращаться к полям или нет (мои привязки генерируют геттеры и сеттеры в любом случае, поскольку в Haskell есть только функции).

Итак: знаете ли вы о любом не финальном, статическом или нестатическом поле в любом из классов в стандартной библиотеке java?

+0

Вы спрашиваете о двух разных вещах: «не окончательный» и «может быть установлен непосредственно». Нефинальные поля чрезвычайно распространены в классах API. Вы имели в виду «public», что вам нужно, чтобы иметь возможность устанавливать поле непосредственно из несвязанного класса? –

+0

Да, конечно, я говорил только о публичных членах. – scravy

ответ

1
java.awt.Dimension.height 
java.awt.Dimension.width 
java.awt.Event.arg 
java.awt.Event.clickCount 
java.awt.Event.evt 
java.awt.Event.id 
java.awt.Event.key 
java.awt.Event.modifiers 
java.awt.Event.target 
java.awt.Event.when 
java.awt.Event.x 
java.awt.Event.y 
java.awt.GridBagConstraints.anchor 
java.awt.GridBagConstraints.fill 
java.awt.GridBagConstraints.gridheight 
java.awt.GridBagConstraints.gridwidth 
java.awt.GridBagConstraints.gridx 
java.awt.GridBagConstraints.gridy 
java.awt.GridBagConstraints.insets 
java.awt.GridBagConstraints.ipadx 
java.awt.GridBagConstraints.ipady 
java.awt.GridBagConstraints.weightx 
java.awt.GridBagConstraints.weighty 
java.awt.GridBagLayout.columnWeights 
java.awt.GridBagLayout.columnWidths 
java.awt.GridBagLayout.rowHeights 
java.awt.GridBagLayout.rowWeights 
java.awt.Insets.bottom 
java.awt.Insets.left 
java.awt.Insets.right 
java.awt.Insets.top 
java.awt.Point.x 
java.awt.Point.y 
java.awt.Polygon.npoints 
java.awt.Polygon.xpoints 
java.awt.Polygon.ypoints 
java.awt.Rectangle.height 
java.awt.Rectangle.width 
java.awt.Rectangle.x 
java.awt.Rectangle.y 
java.awt.geom.Arc2D$Double.extent 
java.awt.geom.Arc2D$Double.height 
java.awt.geom.Arc2D$Double.start 
java.awt.geom.Arc2D$Double.width 
java.awt.geom.Arc2D$Double.x 
java.awt.geom.Arc2D$Double.y 
java.awt.geom.Arc2D$Float.extent 
java.awt.geom.Arc2D$Float.height 
java.awt.geom.Arc2D$Float.start 
java.awt.geom.Arc2D$Float.width 
java.awt.geom.Arc2D$Float.x 
java.awt.geom.Arc2D$Float.y 
java.awt.geom.CubicCurve2D$Double.ctrlx1 
java.awt.geom.CubicCurve2D$Double.ctrlx2 
java.awt.geom.CubicCurve2D$Double.ctrly1 
java.awt.geom.CubicCurve2D$Double.ctrly2 
java.awt.geom.CubicCurve2D$Double.x1 
java.awt.geom.CubicCurve2D$Double.x2 
java.awt.geom.CubicCurve2D$Double.y1 
java.awt.geom.CubicCurve2D$Double.y2 
java.awt.geom.CubicCurve2D$Float.ctrlx1 
java.awt.geom.CubicCurve2D$Float.ctrlx2 
java.awt.geom.CubicCurve2D$Float.ctrly1 
java.awt.geom.CubicCurve2D$Float.ctrly2 
java.awt.geom.CubicCurve2D$Float.x1 
java.awt.geom.CubicCurve2D$Float.x2 
java.awt.geom.CubicCurve2D$Float.y1 
java.awt.geom.CubicCurve2D$Float.y2 
java.awt.geom.Ellipse2D$Double.height 
java.awt.geom.Ellipse2D$Double.width 
java.awt.geom.Ellipse2D$Double.x 
java.awt.geom.Ellipse2D$Double.y 
java.awt.geom.Ellipse2D$Float.height 
java.awt.geom.Ellipse2D$Float.width 
java.awt.geom.Ellipse2D$Float.x 
java.awt.geom.Ellipse2D$Float.y 
java.awt.geom.Line2D$Double.x1 
java.awt.geom.Line2D$Double.x2 
java.awt.geom.Line2D$Double.y1 
java.awt.geom.Line2D$Double.y2 
java.awt.geom.Line2D$Float.x1 
java.awt.geom.Line2D$Float.x2 
java.awt.geom.Line2D$Float.y1 
java.awt.geom.Line2D$Float.y2 
java.awt.geom.Point2D$Double.x 
java.awt.geom.Point2D$Double.y 
java.awt.geom.Point2D$Float.x 
java.awt.geom.Point2D$Float.y 
java.awt.geom.QuadCurve2D$Double.ctrlx 
java.awt.geom.QuadCurve2D$Double.ctrly 
java.awt.geom.QuadCurve2D$Double.x1 
java.awt.geom.QuadCurve2D$Double.x2 
java.awt.geom.QuadCurve2D$Double.y1 
java.awt.geom.QuadCurve2D$Double.y2 
java.awt.geom.QuadCurve2D$Float.ctrlx 
java.awt.geom.QuadCurve2D$Float.ctrly 
java.awt.geom.QuadCurve2D$Float.x1 
java.awt.geom.QuadCurve2D$Float.x2 
java.awt.geom.QuadCurve2D$Float.y1 
java.awt.geom.QuadCurve2D$Float.y2 
java.awt.geom.Rectangle2D$Double.height 
java.awt.geom.Rectangle2D$Double.width 
java.awt.geom.Rectangle2D$Double.x 
java.awt.geom.Rectangle2D$Double.y 
java.awt.geom.Rectangle2D$Float.height 
java.awt.geom.Rectangle2D$Float.width 
java.awt.geom.Rectangle2D$Float.x 
java.awt.geom.Rectangle2D$Float.y 
java.awt.geom.RoundRectangle2D$Double.archeight 
java.awt.geom.RoundRectangle2D$Double.arcwidth 
java.awt.geom.RoundRectangle2D$Double.height 
java.awt.geom.RoundRectangle2D$Double.width 
java.awt.geom.RoundRectangle2D$Double.x 
java.awt.geom.RoundRectangle2D$Double.y 
java.awt.geom.RoundRectangle2D$Float.archeight 
java.awt.geom.RoundRectangle2D$Float.arcwidth 
java.awt.geom.RoundRectangle2D$Float.height 
java.awt.geom.RoundRectangle2D$Float.width 
java.awt.geom.RoundRectangle2D$Float.x 
java.awt.geom.RoundRectangle2D$Float.y 
java.beans.beancontext.BeanContextChildSupport.beanContextChildPeer 
java.io.InterruptedIOException.bytesTransferred 
java.io.InvalidClassException.classname 
java.io.OptionalDataException.eof 
java.io.OptionalDataException.length 
java.io.StreamTokenizer.nval 
java.io.StreamTokenizer.sval 
java.io.StreamTokenizer.ttype 
java.io.WriteAbortedException.detail 
java.rmi.RemoteException.detail 
java.rmi.activation.ActivationException.detail 
java.rmi.server.ServerCloneException.detail 
java.sql.DriverPropertyInfo.choices 
java.sql.DriverPropertyInfo.description 
java.sql.DriverPropertyInfo.name 
java.sql.DriverPropertyInfo.required 
java.sql.DriverPropertyInfo.value 
javax.accessibility.AccessibleAttributeSequence.attributes 
javax.accessibility.AccessibleAttributeSequence.endIndex 
javax.accessibility.AccessibleAttributeSequence.startIndex 
javax.accessibility.AccessibleTextSequence.endIndex 
javax.accessibility.AccessibleTextSequence.startIndex 
javax.accessibility.AccessibleTextSequence.text 
javax.sound.midi.VoiceStatus.active 
javax.sound.midi.VoiceStatus.bank 
javax.sound.midi.VoiceStatus.channel 
javax.sound.midi.VoiceStatus.note 
javax.sound.midi.VoiceStatus.program 
javax.sound.midi.VoiceStatus.volume 
javax.swing.SizeRequirements.alignment 
javax.swing.SizeRequirements.maximum 
javax.swing.SizeRequirements.minimum 
javax.swing.SizeRequirements.preferred 
javax.swing.plaf.basic.BasicMenuUI$ChangeHandler.isSelected 
javax.swing.plaf.basic.BasicMenuUI$ChangeHandler.menu 
javax.swing.plaf.basic.BasicMenuUI$ChangeHandler.ui 
javax.swing.plaf.basic.BasicMenuUI$ChangeHandler.wasFocused 
javax.swing.text.JTextComponent$KeyBinding.actionName 
javax.swing.text.JTextComponent$KeyBinding.key 
javax.swing.text.Segment.array 
javax.swing.text.Segment.count 
javax.swing.text.Segment.offset 
javax.swing.text.html.parser.AttributeList.modifier 
javax.swing.text.html.parser.AttributeList.name 
javax.swing.text.html.parser.AttributeList.next 
javax.swing.text.html.parser.AttributeList.type 
javax.swing.text.html.parser.AttributeList.value 
javax.swing.text.html.parser.AttributeList.values 
javax.swing.text.html.parser.ContentModel.content 
javax.swing.text.html.parser.ContentModel.next 
javax.swing.text.html.parser.ContentModel.type 
javax.swing.text.html.parser.DTD.elementHash 
javax.swing.text.html.parser.DTD.elements 
javax.swing.text.html.parser.DTD.entityHash 
javax.swing.text.html.parser.DTD.name 
javax.swing.text.html.parser.Element.atts 
javax.swing.text.html.parser.Element.content 
javax.swing.text.html.parser.Element.data 
javax.swing.text.html.parser.Element.exclusions 
javax.swing.text.html.parser.Element.inclusions 
javax.swing.text.html.parser.Element.index 
javax.swing.text.html.parser.Element.name 
javax.swing.text.html.parser.Element.oEnd 
javax.swing.text.html.parser.Element.oStart 
javax.swing.text.html.parser.Element.type 
javax.swing.text.html.parser.Entity.data 
javax.swing.text.html.parser.Entity.name 
javax.swing.text.html.parser.Entity.type 
javax.transaction.xa.XAException.errorCode 
javax.xml.ws.Holder.value 

Некоторые из них являются явно WTF.

3

Посмотрите на некоторые из типов геометрии в java.awt пакете, как x и y полей Point.