タグ

clone()に関するchess-newsのブックマーク (3)

  • JavaのStringについて - Qiita

    JavaのStringについてまとめます。 Stringとは 文字列を扱うクラスです。結合を加算と同様の感覚で行えるため、C言語から移った人だと感動するかもしれません。 public class Test { public static void main(String[] args) { String a = "aaa"; a += "bbb"; a += "ccc"; System.out.println(a); } } Stringは不変オブジェクト 見た目上は結合を加算と同様に行えるStringですが、実は裏ではオブジェクトを作り直すという処理を行っています。これはStringが内容を変更できない不変オブジェクト (イミュータブルなオブジェクト) の一種だからです。先ほどの例だと、次のような処理を行っていることになります。 public class Test { public st

    JavaのStringについて - Qiita
  • https://funini.com/kei/java/clone.shtml

  • Javaのcloneメソッドの正しい実装方法 - Qiita

    cloneメソッドの実装を行うにはコツが必要なようなのでまとめてみたいと思います。 #cloneメソッドとは cloneメソッドとは、Javaの全クラスの親クラスであるObjectクラスが持っているメソッドの一つで、自分自身を複製するという役割を持っています。 #cloneメソッドが必要な理由 自分自身を複製するのであれば、Hoge a=this;といった感じに記述すれば良いのではないか、と思われるかもしれません。しかし、Javaにおいて、クラス型の変数に入っているのは、インスタンスの中身への矢印(参照)なので、この場合、aはthisと全く同じインスタンスを指しているということになります。そのため、片方のフィールドを操作すると、もう片方のフィールドも書き換わってしまいます。このような事態を避けるためにcloneメソッドを利用する、というわけです。 #Objectクラスのcloneメソッド

    Javaのcloneメソッドの正しい実装方法 - Qiita
  • 1