Java的封装学习

复制代码
package oop.demo04;
// 类中的 private :私有
public class Student {
    //属性私有 不能被main方法中的实例对象操作,就是不能通过 对象.name操作
    private String name;//姓名
    private int id;//学号
    private char sex;//性别
    private int age;//年龄

    //get和set
    //提供一些可以操作这个属性的方法
    //提供一些public的get和set方法

    //get 意思是获得这个数据
    public String getName(){
        return this.name;
    }
    //set意思是给这个数据设置值
    public void setName(String name){
        this.name=name;
    }

    //alt+inset快捷键


    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){//自己进行一些不合法的检测
            this.age=3;
        }else{
            this.age = age;
        }

    }
}

//测试代码
/*
public static void main(String[] args) {
        Student s1 = new Student();
//        s1.name;  // 这样写会报错
        s1.setName("大鑫");
        System.out.println(s1.getName());
        s1.setAge(1000);//不合法
        System.out.println(s1.getAge());

    }
* */
/*
封装的好处
1、提高程序的安全性,保护数据
2、隐藏代码的的实现细节
3、统一接口
4、系统可维护性增加
* */
复制代码

 

posted @   狂神大鑫  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示