成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java封裝

VPointer / 3164人閱讀

摘要:封裝什么是封裝封裝可以認(rèn)為是一個(gè)保護(hù)屏障,防止代碼和數(shù)據(jù)被外部類定義的代碼隨機(jī)訪問(wèn)。封裝最主要的功能在于我們可以修改自己的實(shí)現(xiàn)代碼,而不用修改那些調(diào)用我們代碼的程序片段。

Java封裝 1.什么是封裝

封裝可以認(rèn)為是一個(gè)保護(hù)屏障,防止代碼和數(shù)據(jù)被外部類定義的代碼隨機(jī)訪問(wèn)。封裝最主要的功能在于我們可以修改自己的實(shí)現(xiàn)代碼,而不用修改那些調(diào)用我們代碼的程序片段。封裝加強(qiáng)了代碼的安全性。

2.封裝的優(yōu)點(diǎn)

1.良好的封裝能夠減少耦合性
2.類內(nèi)部的結(jié)構(gòu)可以自由修改
3.隱藏信息,增強(qiáng)安全性

3.實(shí)現(xiàn)封裝的步驟

修改屬性的可見(jiàn)性來(lái)限制對(duì)屬性的訪問(wèn)private

public class Person {
    private String name;
    private int age;
}

2.對(duì)每個(gè)值屬性提供對(duì)外的公共方法訪問(wèn),使用get,set方法

public class Person{
    private String name;
    private int age;
?
    public int getAge(){
      return age;
    }
?
    public String getName(){
      return name;
    }
?
    public void setAge(int age){
      this.age = age;
    }
?
    public void setName(String name){
      this.name = name;
    }
}
代碼實(shí)例
public class Dog {
    // 靜態(tài)變量
    private String name;
    private int health;// 健康值

    private int love;

    private String strain;// 寵物的品種

    public void show() {

        System.out.println("我叫" + name + ",現(xiàn)在健康值是:" + health + ",親密度是:" + love + ",品種是:" + strain);
    }

    public Dog() {

    }

    public Dog(int health, int love, String strain) {

        this.health = health;
        this.love = love;
        this.strain = strain;
    }

    // 不能夠輕易的可以通過(guò)對(duì)象名.屬性名來(lái)修改數(shù)據(jù) 只提供一個(gè)方法給他 具體參數(shù)合法性判斷由我們自己來(lái)決定
    public void setHealth(int health) {
        if (health < 0 || health > 100) {
            System.out.println("健康值是0-100,默認(rèn)值是60");
            this.health = 60;
            return;
        }
        this.health = health;
    }

    public int getHealth() {
        return this.health;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return this.name;

    }
}
public class Demo02 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Dog dog = new Dog();
        // 封裝屬性 外部觀察不到 只能看到相對(duì)應(yīng)的方法 并且可以在方法里面實(shí)現(xiàn)控制
        dog.setHealth(1001);
        dog.setName("哈哈");
        System.out.println(dog.getName());
        System.out.println(dog.getHealth());

        // 沒(méi)有封裝屬性 可以隨意的查看對(duì)象的屬性
        Dog2 dog2 = new Dog2();
        dog2.health = -100;
        dog2.show();
    }

}
public class Demo01 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        // 人有姓名 年齡 身高 體重 使用封裝思想來(lái)創(chuàng)建類
        Person person = new Person();
        person.setName("張三");
        person.setAge(18);
        person.setHeight(175);
        person.setWeight(130);
        System.out.println(person.toString());
    }

}

class Person {
    private String name;
    private int age;
    private int height;
    private int weight;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getHeight() {
        return height;
    }

    public void setHeight(int height) {
        if (height < 0) {
            this.height = 0;
            return;
        }
        this.height = height;
    }

    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", height=" + height + ", weight=" + weight + "]";
    }

    public int getWeight() {
        return weight;
    }

    public void setWeight(int weight) {
        if (weight < 0) {
            this.weight = 0;
            return;
        }
        this.weight = weight;
    }

}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72842.html

相關(guān)文章

  • 樂(lè)字節(jié)Java|JavaBean封裝、繼承與權(quán)限修飾

    摘要:本文繼續(xù)講封裝。上一篇樂(lè)字節(jié)垃圾回收機(jī)制和語(yǔ)句這次講述繼承與權(quán)限修飾。通過(guò)繼承,子類自動(dòng)擁有了基類的所有成員成員變量和成員方法。一覽無(wú)遺子承父業(yè)兒子自己使用家庭和睦占為已有。 本文繼續(xù)講Java封裝。上一篇:樂(lè)字節(jié)Java|GC垃圾回收機(jī)制、package和import語(yǔ)句 這次講述JavaBean、繼承與權(quán)限修飾。showImg(https://segmentfault.com/im...

    mylxsw 評(píng)論0 收藏0
  • 面向?qū)ο笾齻€(gè)基本特征(javaScript)

    摘要:對(duì)象是公布其接口。節(jié)選自百度百科我對(duì)于封裝的理解,可能還有一個(gè)步驟就是抽離,首先你要清楚在一個(gè)對(duì)代碼中你應(yīng)該抽離那些屬性方法,有了這些為基礎(chǔ)才能更好的做好封裝。節(jié)選自百度百科因?yàn)槭菦](méi)有重載的概念的所以要自己編寫(xiě)邏輯完成重載。 1. 前言 2. 封裝 3. 繼承 4. 多態(tài) 5. 總結(jié) 1. 前言 了解過(guò)面向?qū)ο蟮耐瑢W(xué)應(yīng)該都知道,面向?qū)ο笕齻€(gè)基本特征是:封裝、繼承、多態(tài),但是對(duì)于這三...

    IamDLY 評(píng)論0 收藏0
  • Java學(xué)習(xí)筆記——封裝

    摘要:聲明本文首發(fā)于我的個(gè)人微信公眾號(hào)編程社區(qū),查看更多文章與學(xué)習(xí)資源請(qǐng)移步我的公眾號(hào)編程社區(qū)今天我們來(lái)看看面向?qū)ο蟮娜筇卣髦环庋b下來(lái)我們從現(xiàn)實(shí)生活中的例子來(lái)聊聊封裝的特性我們?nèi)粘J褂玫碾娔X主機(jī),把內(nèi)存主板等等都封裝到機(jī)箱里面去。 聲明:本文首發(fā)于我的個(gè)人微信公眾號(hào)【Java編程社區(qū)】,查看更多文章與學(xué)習(xí)資源請(qǐng)移步我的公眾號(hào)Java編程社區(qū) 今天我們來(lái)看看面向?qū)ο蟮娜筇卣髦弧庋b ...

    linkFly 評(píng)論0 收藏0
  • java入門(mén)第二季--封裝--什么是java中的封裝

    封裝 showImg(https://segmentfault.com/img/bVbnAOR?w=1293&h=679); showImg(https://segmentfault.com/img/bVbnAOU?w=1149&h=722); 代碼get,set /javaDemo2/src/com/imooc/Telphone.java package com.imooc; import c...

    wslongchen 評(píng)論0 收藏0
  • Java知識(shí)點(diǎn)總結(jié)(JDBC-封裝JDBC)

    摘要:知識(shí)點(diǎn)總結(jié)封裝知識(shí)點(diǎn)總結(jié)封裝目錄下新建一個(gè)文件,用于封裝數(shù)據(jù)庫(kù)連接信息把獲取數(shù)據(jù)庫(kù)連接對(duì)象和關(guān)閉連接的操作封裝到這個(gè)類中讀取和處理資源文件的信息只需要加載一次,所以寫(xiě)成靜態(tài)代碼塊。 Java知識(shí)點(diǎn)總結(jié)(JDBC-封裝JDBC) @(Java知識(shí)點(diǎn)總結(jié))[Java, JDBC] 封裝JDBC src目錄下新建一個(gè)db.properties文件,用于封裝數(shù)據(jù)庫(kù)連接信息 showImg(ht...

    null1145 評(píng)論0 收藏0
  • Chapter10 Java封裝

    摘要:封裝的實(shí)現(xiàn)封裝將類的某些信息隱藏在類內(nèi)部,不允許外部程序直接訪問(wèn),只能通過(guò)該類提供的方法來(lái)實(shí)現(xiàn)對(duì)隱藏信息的操作和訪問(wèn)即隱藏對(duì)象信息的同時(shí)要留出訪問(wèn)的接口封裝的特點(diǎn)只能通過(guò)規(guī)定的方法訪問(wèn)數(shù)據(jù)隱藏類的實(shí)例細(xì)節(jié),方便修改和實(shí)現(xiàn)封裝代碼的實(shí)現(xiàn)修改屬 Lecture1 封裝的實(shí)現(xiàn) 封裝:將類的某些信息隱藏在類內(nèi)部,不允許外部程序直接訪問(wèn),只能通過(guò)該類提供的方法來(lái)實(shí)現(xiàn)對(duì)隱藏信息的操作和訪問(wèn)(即隱...

    xorpay 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<