【八】Java封装
文章目錄
- 1. 封裝
- 2. 包管理
- 3. static關鍵字
- 4. 代碼塊
1. 封裝
將類的某些信息隱藏在類內部,不允許外部程序直接訪問,通過該類提供的方法來實現對隱藏信息的操作和訪問,隱藏對象的信息,留出訪問的接口。
public class Cat {// private 只能在當前類中使用private String name;private int month;// set方法設置屬性public void setName(String name){this.name = name;}// get方法獲取屬性public String getName(){return this.name;} }如果只設置set屬性表示只寫屬性,只設置get屬性表示制度屬性。get 和 set方法里還可以做其他的判斷,但一般不建議。
2. 包管理
包:管理Java文件;解決同名文件沖突;方便維護
語法: package 包名
例:package com.oracle.animal;
注意:
1、必須放在Java源文件中的第一行
2、一個Java源文件中只能有一個package語句
3、包名全部英文小寫
4、命名方式:域名倒序+模塊+功能
5、Java中一個包里不能存在同名類
導包
語法:import 包名.類名;
例:
常用系統包
- java.lang 包含java語言基礎的類
- java.util 包含java語言中各種工具類
- java.io 包含輸入、輸出相關功能的類
3. static關鍵字
前面一直寫的main方法前面有個static修飾符,它表示靜態的意思,接下來來看下他有哪些特性。
- 類對象共享
- 類加載時產生,銷毀時釋放,生命周期長
static+屬性 —靜態屬性(類屬性)
static+方法 —靜態方法(類方法)
類不能加static修飾符;方法內局部變量也不能加static修飾符
靜態成員隨類加載產生,直至類銷毀才回收
靜態成員訪問既可以通過類直接訪問,也可以通過對象訪問
成員方法可以直接訪問靜態成員
靜態方法中不能直接訪問同一個類中的非靜態成員,只能直接調用同一個類中的靜態成員
可以通過實例化對象后,對象調用的方式完成非靜態成員調用
4. 代碼塊
1、通過{ }可以形成代碼塊
2、方法內的代碼塊稱為:普通代碼塊
3、類內的代碼塊稱為:構造代碼塊
4、構造代碼塊前+static:靜態代碼塊
普通代碼塊:順序執行,先出現,先執行
構造代碼塊:創建對象時調用,優先于構造方法執行
靜態代碼塊:類加載時調用,優先于構造代碼塊執行,無論產生多少類實例,靜態代碼塊只執行一次;靜態代碼塊只能訪問靜態成員
總結
- 上一篇: 【ES6(2015)】Promise
- 下一篇: 跳坑成功,手摸手带你使用PHP连接Ora