|
|
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
Всем привет, изучаю java и не могу понять, как правильно спроектировать класс. Перейдем к сути: 1. Я имею Field extends JFrame и в нем есть несколько JLabel и JTextField . 2. В каждом JTextField есть @Override mouseReleased (MouseEvent evt). 3. У меня реализован метод SetValueToLableFromEachTextFieldWithCondition в Field - берется значения с каждого JTextField, агрегируем и вставляем в один из JLabel. Как мне вызывать SetValueToLableFromEachTextFieldWithCondition в mouseReleased? Какую литературу почитать, что бы больше не возникали такие тупые вопросы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2014, 00:20 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
DenyssКак мне вызывать SetValueToLableFromEachTextFieldWithCondition в mouseReleased? Просто взять и вызывать.. Main.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. MainFrame.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. Util.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2014, 15:26 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
avp.mk, спасибо что потратил время на меня, но правда мне не совсем понятно как это сделать в моей ситуации: BattleshipFrame.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. Ship.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. Мне нужно вызвать refreshNumberOfShips (обновить Labels) при изменении позиции Ship в mouseReleased. Я пробовал перенести реализацию mouseReleased с Ship в BattleshipFrame, но я тогда не могу использовать методы и свойства Ship. Как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2014, 21:21 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
DenyssМне нужно вызвать refreshNumberOfShips (обновить Labels) при изменении позиции Ship в mouseReleased. Я пробовал перенести реализацию mouseReleased с Ship в BattleshipFrame, но я тогда не могу использовать методы и свойства Ship. Вот так можно (см. Ship.java стр. 51). Main.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. BattleshipFrame.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. Ship.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. Procedure_NoParam.java Код: java 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2014, 11:39 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2014, 22:20 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
avp.mk, спасибо. Супер! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2014, 01:27 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
avp.mk, привет. Проектирование классов 2: BattleshipFrame.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. Field.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. Проблема : Происходит зацикливание в getShotPoint, я ожидал, что во время wait(10000) в getShotPoint произойдет mousePressed и новое значение shotPoint будет установлено, но mousePressed не происходит. Хотя, до того как зайти в getShotPoint, mousePressed в field работает. Я использовал synchronized, но не помогло. Что я делаю не так? И как лучше здесь поступить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2014, 21:43 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
Denyss, Здесь, кажется, несколько пунктов - не так. Например, ships.length - вернет вам количество элементов данного массива. Вместо нагромождения цикла в методе countNumberOfShips Почитаю еще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2014, 16:52 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
Denyss, Попробуйте синхронизироваться по объекту. В классе Field опишите новое поле Код: java 1. Далее добавляете слушателя нажатия следующим образом (заменяете ваш способ) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Замените вызов метода wait(10000) на Код: java 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2014, 17:57 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
smackmychi, Ошибочка. В обработчике не просто notify(), а lockObj.notify() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2014, 18:05 |
|
||
|
Помочь новичку в проектировании классов
|
|||
|---|---|---|---|
|
#18+
smackmychi, Добавил lockObj с синхронизацией на нем - не помогло, сделал синхронизацию по shotPoint - не помогло. Думаю, проблема в чем-то еще, смотри Battleship.rar. После нажатия кнопки "старт", уже никакой liseners не работают. Где я налажал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2014, 23:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38727944&tid=2126633]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
191ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 548ms |

| 0 / 0 |
