Guest User

Untitled

a guest
Aug 14th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. How to set/get string in Java safely?
  2. Class Foo {
  3. String aString;
  4. public String getString() {
  5. return aString;
  6. }
  7. public void setString(s) {
  8. aString = s;
  9. }
  10. }
  11.  
  12. Class Foo {
  13. String aString;
  14. ReentrantLock aLock;
  15. public String getString() {
  16. aLock.lock();
  17. return aString;
  18. aLock.unlock(); // This line will be unreachable. How to fix??
  19. }
  20. public void setString(s) {
  21. aLock.lock();
  22. aString = s;
  23. aLock.unlock();
  24. }
  25. }
  26.  
  27. public String getString() {
  28. try {
  29. aLock.lock();
  30. return aString;
  31. } finally {
  32. aLock.unlock();
  33. }
  34. }
  35.  
  36. public void setString(s) {
  37. try {
  38. aLock.lock();
  39. aString = s;
  40. } finally {
  41. aLock.unlock();
  42. }
  43. }
  44.  
  45. public synchronized String getString() {
  46. return aString;
  47. }
  48.  
  49. public synchronized void setString(s) {
  50. aString = s;
  51. }
Add Comment
Please, Sign In to add comment