Java面向对象基础2——封装

简介: 简单来说,封装就是正确地设计对象的属性。要注意的是,对象代表什么,就封装对应的数据,并提供数据的对应行为

前言


封装是面向对象的三大特点之一,本文将会讲解有关内容


概念


简单来说,封装就是正确地设计对象的属性。要注意的是,对象代表什么,就封装对应的数据,并提供数据的对应行为

列如人画圆 要将画圆写到圆的类中


优点


Java汇总了一个文档,对于某一种数据提供了封装,只需要在编程中调用


权限修饰符


权限修饰符可以用来修饰成员变量、成员方法,使得方法、变量和构造方法只能被所属类访问,实现保护数据


set方法和get方法


在设计方法时格式如下


public void set方法名(数据类型 变量名){
    方法体;
}
 ...
 public 数据类型 get方法名(){
    return 变量名;


列如


public void setAge(int num){
  //方法体
}
...
public int getAge(){
        return age;
    }


在调用方法时格式如下


对象名.set类名(变量);
System.out.println("对象名.get类名");


set(赋值)方法是给成员变量赋值,故定义方法时要带参数
get(获取)方法是对外提供成员变量的值
要先赋值才能获取


用IDEA来实现一下具体程序


package test3;
public class Person {
    private int age;
    public void setAge(int num){
        if(num >0 && num <100){
            age = num;
        }
        else {
            System.out.println("输入不合法");
        }
    }
    public int getAge(){
        return age;
    }
}
package test3;
public class PersonTest {
    public static void main(String[] args) {
        Person p = new Person();
        p.setAge(-18);
        System.out.println("年龄是:" + p.getAge());
    }
}

2b09cd50ec234ae3a3227dbefa2cbd60.png


从上述程序可以看到当输入的年龄超出了我们所规定的范围时就会报错,然后返回该类型的初始值


类型 默认初始值
整数 0
小数 0.0
字符串 ‘/u0000’ 空格
布尔 false
引用数据 null


小结


在本文主要介绍了有关封装的知识点以及一个权限修饰符和方法的使用,为进阶学习铺垫

相关文章
|
20天前
|
安全 Java 数据安全/隐私保护
|
20天前
|
搜索推荐 Java
Java的面向对象特性主要包括封装、继承和多态
【4月更文挑战第5天】Java的面向对象特性主要包括封装、继承和多态
15 3
|
1月前
|
Java 关系型数据库
JAVA面向对象设计原则
JAVA面向对象设计原则
12 1
|
1月前
|
Java
java面向对象高级分层实例_实体类
java面向对象高级分层实例_实体类
10 1
|
1天前
|
安全 Java
Java基础&面向对象&继承&抽象类
Java基础&面向对象&继承&抽象类
|
1天前
|
Java
【Java基础】详解面向对象特性(诸如继承、重载、重写等等)
【Java基础】详解面向对象特性(诸如继承、重载、重写等等)
5 0
|
6天前
|
安全 Java 机器人
《Java 简易速速上手小册》第2章:面向对象的 Java(2024 最新版)
《Java 简易速速上手小册》第2章:面向对象的 Java(2024 最新版)
19 0
|
9天前
|
存储 Java
Java基础教程(7)-Java中的面向对象和类
【4月更文挑战第7天】Java是面向对象编程(OOP)语言,强调将事务抽象成对象。面向对象与面向过程的区别在于,前者通过对象间的交互解决问题,后者按步骤顺序执行。类是对象的模板,对象是类的实例。创建类使用`class`关键字,对象通过`new`运算符动态分配内存。方法包括构造函数和一般方法,构造函数用于对象初始化,一般方法处理逻辑。方法可以有0个或多个参数,可变参数用`类型...`定义。`this`关键字用于访问当前对象的属性。
|
13天前
|
存储 Java 编译器
对象的交响曲:深入理解Java面向对象的绝妙之处
对象的交响曲:深入理解Java面向对象的绝妙之处
46 0
对象的交响曲:深入理解Java面向对象的绝妙之处
|
23天前
|
搜索推荐 Java
Java基础(快速排序算法)
Java基础(快速排序算法)
24 4