封装:面向对象三大特征之一
面向对象三大特征:封装,继承,多态
封装是一种思想,这里只介绍属性的封装!
private 关键字 私有化的
private 可以修饰内部类,private 可以修饰成员变量,private 可以修饰成员方法
属性封装,主要使用 private 修饰属性--成员变量
private 修饰的内容,只能在当前类中使用
第一步:private 修饰属性(其他类不能直接操作属性)
第二步:提供公开的(public)设置值的方法(set方法)
第三步:提供公开的(public)获取属性的方法(get方法)
package cn.bjpowernode.javase01.day10.privatedemo01;
public class Student {
String name;
private int age;
//给 age 设置值!
public void setAge(int age){
if(age>0 && age<130){
this.age=age;
}else {
System.err.println("年龄设置不合理,默认年龄18!");
this.age=18;
}
}
//返回 age
public int getAge(){
return age;
}
}
package cn.bjpowernode.javase01.day10.privatedemo01; import java.util.Scanner; public class TestStudent { public static void main(String[] args) { Student s1 = new Student(); s1.name="张三"; //因为name无private修饰,可直接用对象调用赋值 //s1.age=20; //有private修饰,不能直接调用 s1.setAge(2000); //public修饰,可直接调用 //System.out.println("名字:"+s1.name+"\t年龄:"+s1.age); System.out.println("名字:"+s1.name+"\t年龄:"+s1.getAge()); } }
输出结果:
年龄设置不合理,默认年龄18!
名字:张三 年龄:18
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)