Java封装如何封装 封装的好处是什么?
提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
文章目錄
- 前言
- 一、封裝的作用是什么?
- 二、封裝的好處
- 三、封裝的步驟
- 1.引入庫
- 2.private的應用
- 總結
前言
????????我要看電視,只需要按一下開關和換臺就可以了。有必要了解電視機內部的結構嗎?有必要碰碰顯像管嗎?制造廠家為了方便我們使用電視,把復雜的內部細節全部封裝起來,只給我們暴露簡單的接口,比如:電源開關。具體內部是怎么實現的,我們不需要操心。
????????需要讓用戶知道的才暴露出來,不需要讓用戶知道的全部隱藏起來,這就是封裝。說的專業一點,封裝就是把對象的屬性和操作結合為一個獨立的整體,并盡可能隱藏對象的內部實現細節。
??????????我們程序設計要追求“高內聚,低耦合”。 高內聚就是類的內部數據操作細節自己完成,不允許外部干涉;低耦合是僅暴露少量的方法給外部使用,盡量方便外部調用。
提示:以下是本篇文章正文內容,下面案例可供參考
一、封裝的意義是什么?
封裝是指將類的某些信息隱藏在類的內部,不允許外部程序直接訪問,而是通過該類提供的方法來對隱藏的信息進行操作和訪問。
二、封裝的好處?
??????1. 提高代碼的安全性。
? ? ?2. 提高代碼的復用性。
? ? ?3. “高內聚”:封裝細節,便于修改內部代碼,提高可維護性。
? ? ?4. “低耦合”:簡化外部調用,便于調用者使用,便于擴展和協作。
三、封裝的步驟
? ? ? ? 封裝的話需要private關鍵字,private是一個修飾符,可以用來修飾成員(成員變量,成員方法)
被private修飾的成員,只能在本類進行訪問,針對private修飾的成員變量,如果需要被其他類使用,提供相應的操作
提供“get變量名()”方法,用于獲取成員變量的值,方法用public修飾
提供“set變量名(參數)”方法,用于設置成員變量的值,方法用public修飾
1.使用private制作set和get類
代碼如下(示例):
/* 學生類 */class Student {//成員變量 String name;private int age; //提供get/set方法 public void setAge(int a) {if(a<0 || a>120) {System.out.println("年齡不符合規定"); }else { age = a; } }public int getAge() {return age; }//成員方法 public void show() {System.out.println(name + "," + age);}} }/* 學生測試類 */public class StudentDemo {public static void main(String[] args) { //創建對象 Student s = new Student(); //給成員變量賦值 s.name = "林青霞"; s.setAge(30); //調用show方法 s.show(); } }private制作get和set的快捷方法
提供“get變量名()”方法,用于獲取成員變量的值,方法用public修飾
提供“set變量名(參數)”方法,用于設置成員變量的值,方法用public修飾
? ? ? ? 在這里右擊命名-->重構-->封裝字段;就這樣就完成啦get方法和set方法了。?
???2.this關鍵字應用
????????this修飾的變量用于指代成員變量,其主要作用是(區分局部變量和成員變量的重名問題)
方法的形參如果與成員變量同名,不帶this修飾的變量指的是形參,而不是成員變量方法的形參沒有與成員變量同名,不帶this修飾的變量指的是成員變量
代碼如下:
package com.xxgc.ch01.po;public class Car {//把屬性變為私有private String carNo;private String brand;private int price;public String getCarNo() {return carNo;}public void setCarNo(String carNo) {this.carNo = carNo;}public String getBrand() {return brand;}public void setBrand(String brand) {this.brand = brand;}public int getPrice() {return price;}public void setPrice(int price) {this.price = price;}//對外產生get set 方法}3.this內存原理
this代表當前調用方法的引用,哪個對象調用的方法,this就代表哪一個對象
代碼如下(示例):
public class StudentDemo {public static void main(String[] args) { Student s1 = new Student();s1.setName("張三");Student s2 = new Student();s2.setName("李四"); }}圖解:
?
總結
這里對文章進行總結:
1.?封裝概述 是面向對象三大特征之一(封裝,繼承,多態)?是面向對象編程語言對客觀世界的模擬,客觀世界里成員變量都是隱藏在對象內部的,外界是無法直接操作的
2.?封裝原則 將類的某些信息隱藏在類內部,不允許外部程序直接訪問,而是通過該類提供的方法來實現對隱藏信息的操作和訪問 成員變量private,提供對應的getXxx()/setXxx()方法
3.?封裝好處 通過方法來控制成員變量的操作,提高了代碼的安全性 把代碼用方法進行封裝,提高了代碼的復用性
以上就是今天要講的內容,本文僅僅簡單介紹了Java的意義和使用,而Java是一門面向對象編程言語也提供了跨平臺的程序設計語言。
總結
以上是生活随笔為你收集整理的Java封装如何封装 封装的好处是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分屏显示
- 下一篇: Windows 如何关闭快捷键ctrl+