Java中的封裝指的是將數據的訪問權限進行限制,使用關鍵字private將數據成員包裹起來,從而防止在類外直接訪問和修改成員變量。
public class Student{ private String name; // 將數據成員包裹起來 /** * 獲取name的值 */ public String getName(){ return name; } /** * 設置name的值 */ public void setName(String name){ this.name = name; } }
上述代碼中,name被聲明為私有成員變量,不可在類外直接訪問,但是提供了公有的getter和setter方法,以便對name進行讀寫操作。這樣的封裝不僅可以保證數據的安全性,還能夠方便代碼的維護和升級。
Java中的接口指的是定義一組方法的規范,但是并不提供實現。接口的定義需要使用interface關鍵字,被定義為接口的類必須實現接口中定義的所有方法。
public interface Runner{ void run(); // 定義run方法 } public class Cat implements Runner{ /** * 實現Runner接口 */ public void run(){ System.out.println("Cat is running"); } } public class Dog implements Runner{ /** * 實現Runner接口 */ public void run(){ System.out.println("Dog is running"); } }
上述代碼中,定義了一個Runner接口,該接口定義了一個run方法,Cat和Dog類實現了Runner接口,并實現了run方法。這種方式可以避免繼承中的單一繼承限制,使得類可以同時實現多個接口,提高代碼的復用性。