posts - 1, comments - 0, trackbacks - 0, articles - 2
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          日歷

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          隨筆檔案

          文章檔案

          搜索

          •  

          最新評論

          警惕

          Posted on 2005-09-15 22:33 太陽雨 閱讀(75) 評論(0)  編輯  收藏

             現(xiàn)在大部分人寫程序的時候總是希望將數(shù)據(jù)封裝的相對良好,但是往往在public修飾的方法中返回私有成員,從而導(dǎo)致在調(diào)用方法中的對象與該私有成員指向相同的內(nèi)存空間,從而破壞了封裝性。從下面的例子中 可以看到結(jié)果。

          class Sport{
            
          public String name = "Green";
            
          public int age = 20;
            
          public Object clone(){
              Object obj 
          = null;
              
          try{
                obj 
          = super.clone();
              }
          catch(Exception e){
                      }

              
          return obj;
            }

          }

          public class Test{
            sport s 
          = new sport();
            sport ss 
          = new sport();
            
          private String [][] content = {
                  
          {"","Test"},{"ar"}
                                          }
          ;

            
          protected void pp(){
              System.out.println(ss.name);
            }
           
            
          public sport getSs(){
                 
          return (sport)ss.clone();
            }

          }
          class Demo
          {
            
          public static void main(String [] args){
                  Test t 
          = new Test();
                  t.change();
                  t.pp();
                  sport spt
          = t.getSs();
                      //spt.name = "Test";
                  t.pp();
              }

          }
          如果Test的getSs中直接返回ss,則在Demo中spt.name就可以修改t.name

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 东兰县| 涟水县| 彭阳县| 绥滨县| 突泉县| 封开县| 新宾| 凉城县| 景德镇市| 内江市| 桃江县| 新泰市| 昭苏县| 安新县| 永和县| 肃宁县| 陵川县| 普格县| 邵阳市| 长丰县| 扎兰屯市| 清水河县| 民乐县| 平顶山市| 正蓝旗| 县级市| 寻乌县| 鄂尔多斯市| 托克托县| 北流市| 通道| 多伦县| 福建省| 丰都县| 府谷县| 太白县| 中西区| 临夏市| 泊头市| 西城区| 临洮县|