Java封装

简介: Java封装
+关注继续查看

面向对象程序三大特性:封装、继承、多态

一、封装的概念

将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。

优点:

  1. 良好的封装可以减少耦合(提高代码间的独立性)。
  2. 更好的维护代码,加强了代码安全性。
  3. 更好的控制成员变量。


二、访问限定符

Java中主要通过类和访问权限来实现封装:类可以将数据以及封装数据的方法结合在一起,更符合人类对事物的认知,而访问权限用来控制方法或者字段能否直接在类外使用。Java中提供了四种访问限定符:

 

范围   private     defaut  protected     public
1同包同类       √        √       √      √
2同包不同类        √        √      √
3不同包中子类        √      √
4不同包非子类      √
  • 其中defaut是默认的限定符,当你什么限定符都不写的时候,默认就是defaut。
  • 限定符不仅可以限制类成员变量,也可以限制类的可见性。
  • protected在继承中会详细讲解。
class Dog{
    public String name;//public修饰
    private int age;//private修饰
    String color;//默认,default修饰
 
    public Dog(String name, int age, String color) {
        this.name = name;
        this.age = age;
        this.color = color;
    }
    public void eat(){
        System.out.println(name + "在吃狗粮");
    }
}
public class Test1 {
    public static void main(String[] args) {
        Dog dog = new Dog("豆豆",1,"白色");
        System.out.println(dog.name);//public修饰,可以被任何类访问,可以打印
        System.out.println(dog.color);//默认,default修饰,可以在本包访问,可以打印
        System.out.println(dog.age);//private修饰,只可以在Dog类访问,无法打印
    }
}

那我们就没有办法访问 private修饰的成员变量了吗?那当然是有的。


三、如何访问private修饰的成员变量

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

就如上面代码,我们只需要借助getAge(),setAge(),然后直接访问 getAge(),那么就可以打印这个属性了。

System.out.println(dog.getAge());


总结

封装是面向对象程序三大特性之一,这次为大家带来封装,我们下次见!    

目录
相关文章
|
10天前
|
Java
|
11天前
|
Java
图书管理借阅系统【Java简易版】Java三大特征封装,继承,多态的综合运用
图书管理借阅系统【Java简易版】Java三大特征封装,继承,多态的综合运用
23 0
|
23天前
|
Java
JAVA封装的使用
JAVA封装的使用
11 0
|
23天前
|
Java
JAVA封装的作用和含义
JAVA封装的作用和含义
8 0
|
1月前
|
存储 Java 编译器
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(下)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(下)
28 0
|
1月前
|
存储 Java 数据库
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
22 1
|
1月前
|
Java 编译器
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
34 1
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(上)
|
1月前
|
存储 缓存 Java
深入探索Java Integer类:数字封装与强大功能
在Java编程中,数字处理是一项基础而重要的任务。除了基本数据类型,Java还提供了许多包装类,用于对基本数据类型进行封装和扩展功能。其中,Integer类是用于封装整数类型的包装类,它不仅提供了基本数据的封装,还赋予了强大的数字操作功能。本文将带您深入了解Java中的Integer类,包括其特点、用法、常见操作以及在实际开发中的应用。
|
1月前
|
Java
java 特性之封装
当谈到面向对象编程(OOP)的基本原则时,"封装" 是一个不可忽视的概念。在 Java 这样的面向对象编程语言中,封装是实现代码组织、保护和重用的关键。本文将深入探讨 Java 中的封装概念,以及它为何在现代软件开发中如此重要。
|
1月前
|
Java 数据库连接
Java 中封装JDBC连接到JDBCUtils工具类的详解
Java 中封装JDBC连接到JDBCUtils工具类的详解
21 0
相关产品
云迁移中心
推荐文章
更多