首页 > 其他分享 >封装

封装

时间:2022-10-01 23:44:44浏览次数:43  
标签:封装 int void public age sex id

封装

封装要点:属性私有,get/set

封装的意义:

  1. 提高程序的安全性,保护数据
  2. 隐藏代码的实现细节
  3. 统一接口
  4. 提高系统的可维护性
package oop.seal;

public class Student {
    //属性私有
    private String name;
    private int id;
    private char sex;
    private int age;

    //提供可以操作属性的方法
    public String getName(){
        return this.name;
    }
    public void setName(String name){
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public char getSex() {
        return sex;
    }

    public void setSex(char sex) {
        this.sex = sex;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        //设置年龄范围
        if(age>120 || age<0){
            System.out.println("error");
        }else {this.age = age;}
    }
}

package oop.seal;

import java.util.Scanner;

public class Application {
    public static void main(String[] args) {

        Student s1 = new Student();
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入年龄");
        int input = scanner.nextInt();
        s1.setName("qinjiang");
        System.out.println(s1.getName());
        s1.setAge(input);
        System.out.println(s1.getAge());
    }
}

标签:封装,int,void,public,age,sex,id
From: https://www.cnblogs.com/qt0312/p/16748017.html

相关文章

  • python框架中自定义封装logging,一文解决
     为什么需要Logger刚开始写代码可能使用print打印输出就够用了,但是print重定向输出内容非常麻烦,而且无法区分打印日志等级。而logging可以设置打印等级,也可以重定向输......
  • 封装自用Linux命令
    [本文出自天外归云的博客园]1.创建脚本命令文件:vimy_cmd2.编写脚本内容并保存::wq3.转移脚本命令文件到命令工具目录下:mvmy_cmd/usr/local/bin4.修改脚......
  • 封装
    封装该露的露,该藏的藏我们程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合就是仅暴露少量的方法给外部使用封装(数......
  • 直播平台源代码,uni-app上传图片方法封装
    直播平台源代码,uni-app上传图片方法封装 functionchooseImg(count,success){console.log(count)uni.chooseImage({count:count,success:res=>{//console.log(re......
  • React+hook+ts+ant design封装一个input和select搜索的组件
    前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从......
  • React+hook+ts+ant design封装一个table的组件
    前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从......
  • JavaScript封装方法
    1、输入一个值,返回其数据类型**2、数组去重3、字符串去重1、输入一个值,返回其数据类型**functiontype(para){returnObject.prototype.toString.call(para)......
  • idea调试时要注意的问题:idea中用于调试时,可能会隐式调用你写的toString方法,因为要看到
    问题引出:问题探索:问题解决:源码参考:packagecom.xu1.reusing.exercise;/***@authorxu*@Description*@ModifiedBy:*/classEngine{privateS......
  • vue3 封装el-table时,构造$children(类式写法)
    由于业务需求(组件封装),需要在获取el-table下面的el-table-column实例在vue2.x当中直接使用this.$children就可以获取到该实例但是vue3.x弃用了$children,官方建议使用$......
  • 49、使用Visual Studio 2019进行Mediapipe的封装调用
    基本思想:因为项目中使用mediapipe的检测框架,奈何google对其官方提供的tflite封装解析不开源,只能曲线救国,因此使用visualstudio2019进行封装调用一、先测试python版本的medi......