欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一篇文章帶你入門Java封裝

 更新時間:2021年08月03日 09:57:13   作者:Wxbbbbb  
Java面向對象的三大特性:封裝、繼承、多態(tài)。下面對三大特性之一封裝進行了總結,需要的朋友可以參考下,希望能給你帶來幫助

什么是封裝

Java中的封裝是將數據(變量)和作用于數據(方法)的代碼作為一個單元包裝在一起的機制。 在封裝中,類的變量將從其他類隱藏,并且只能通過當前類的方法訪問。

如何實現封裝

可以分為兩步:

第一步:將類的變量聲明為private。

第二步:提供公共set和get方法來修改和獲取變量的值。

代碼展示

public class User {
    private String name;
    private int age;
    private int id;
    private String address;
    public int getAge(){
        return age;
    }
    public String getName(){
        return name;
    }
    public int getId(){
        return id;
    }
    public String getAddress(){
        return address;
    }
    public void setName(String Newname){
        name = Newname;
    }
    public void setAge(int Newage){
        age = Newage;
    }
    public void setAddress(String Newaddress){
        address= Newaddress;
    }
}

class Mainclass{
     public static void main(String[] args) {
        User user = new User();
        user.setAge(18);
        user.setName("Kevin");
        user.setAddress("江蘇");
        System.out.println("Name:"+user.getName()+",Age:"+user.getAge());
    }
}

上面就是一個寫好的封裝啦 但是有很多用戶,很多屬性,寫起來就很麻煩,下面提供一種一行代碼搞定的方法

構造方法

public User{
// 方法名與類名同名 沒有返回值結構 其他與普通方法無異
}

注意點:

對于每個類而言,都默認具有一個隱式的空參數構造方法 如果顯式寫了任意一個構造方法,空參數構造方法都會被覆蓋

代碼展示

public class User {
    private String name;
    private int age;
    private int id;
    private String address;
    public User(String name, int age, int id, String address) {
        this.name = name;
        this.age = age;
        this.id = id;
        this.address = address;
    }


    public int getAge(){
        return age;
    }
    public String getName(){
        return name;
    }
    public int getId(){
        return id;
    }
    public String getAddress(){
        return address;
    }
    public void setName(String Newname){
        name = Newname;
    }
    public void setAge(int Newage){
        age = Newage;
    }
    public void setAddress(String Newaddress){
        address= Newaddress;
    }
    public void setId(int Newid){
        id = Newid;}
}


class Mainclass{
     public static void main(String[] args) {
        User user = new User("kevin",18,001,"江蘇");//一行代碼就能賦值啦

        System.out.println("Name:"+user.getName()+",Age:"+user.getAge());
    }
}

總結

封裝的優(yōu)點

  • 良好的封裝能夠減少耦合。
  • 類內部的結構可以自由修改。
  • 可以對成員變量進行更精確的控制。
  • 隱藏信息,實現細節(jié)。

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!

相關文章

  • Shiro集成Spring之注解示例詳解

    Shiro集成Spring之注解示例詳解

    Shiro想必大家都知道了,是目前使用率要比spring security都要多的一個權限框架,下面這篇文章主要給大家介紹了關于Shiro集成Spring之注解的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-09-09
  • SpringBoot文件訪問映射如何實現

    SpringBoot文件訪問映射如何實現

    這篇文章主要介紹了SpringBoot文件訪問映射如何實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • SpringCloud Eureka的使用教程

    SpringCloud Eureka的使用教程

    這篇文章主要給大家介紹了關于SpringCloud Eureka使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • IDEA下SpringBoot指定配置文件啟動項目的全過程

    IDEA下SpringBoot指定配置文件啟動項目的全過程

    我們在使用springboot項目開發(fā)的時候,每次切換環(huán)境跑項目的時候,都得修改配置文件的數據庫地址,這樣來回修改感覺很麻煩,這篇文章主要給大家介紹了關于IDEA下SpringBoot指定配置文件啟動項目的相關資料,需要的朋友可以參考下
    2023-06-06
  • Java項目部署的完整流程(超詳細!)

    Java項目部署的完整流程(超詳細!)

    我相信很多Java新手都會遇到這樣一個問題,跟著教材敲代碼,很容易,但是讓他完整的實現一個應用項目卻不會,下面這篇文章主要給大家介紹了關于Java項目部署的完整流程,需要的朋友可以參考下
    2022-07-07
  • Gson序列化指定忽略字段的三種寫法詳解

    Gson序列化指定忽略字段的三種寫法詳解

    在我們日常使用json序列化框架過程中,經常會遇到在輸出json字符串時,忽略某些字段,那么在Gson框架中,要想實現這種方式,可以怎么處理呢,本文就來介紹一下
    2021-10-10
  • 詳解Guava中EventBus的使用

    詳解Guava中EventBus的使用

    EventBus是Guava的事件處理機制,是設計模式中觀察者模式(生產/消費者編程模型)的優(yōu)雅實現。本文就來和大家聊聊EventBus的使用,需要的可以參考一下
    2022-12-12
  • Java中的NoSuchMethodException異常原因以及解決方案詳解

    Java中的NoSuchMethodException異常原因以及解決方案詳解

    這篇文章主要介紹了Java中的NoSuchMethodException異常原因以及解決方案詳解,NoSuchMethodException是Java反射機制中的異常,在嘗試通過反射獲取方法時,找不到指定的方法,通常發(fā)生在調用?Class?對象的方法時,當方法名或方法參數不匹配時拋出該異常,需要的朋友可以參考下
    2024-02-02
  • Java實現推箱子游戲

    Java實現推箱子游戲

    這篇文章主要為大家詳細介紹了Java實現推箱子游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • java使用CompletableFuture分批處理任務實現

    java使用CompletableFuture分批處理任務實現

    本文主要介紹了java使用CompletableFuture分批處理任務實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-07-07

最新評論