封装(private)(2)
public class Person{
private int age;
}
get和set方法应该带有static,还是不带有static,get和set方法应该定义为实例方法吗?
get读年龄,set改年龄,这个读和改都是操作的一个对象的年龄。(没有对象,何来的年龄呢?)
封装的第二步:对外提供公开的set方法和get方法作为操作入口。(并且都不带static,都是实例方法)
// 【修饰符列表】 返回值类型 方法名(形式参数列表){
// }
public int getAge( ){
return age;
}
public void setAge(int nianLing ){
//在这个位置设置关卡!!!!
if ( nianLing >0 || nianLing<150){
System.out.println( "对不起,年龄值不合法,请重新赋值!!!");
return; //直接终止程序的执行。
}
//程序能够执行到这里,说明年龄一定是合法的。
age = nianLing;
}
注意:java开发规范中有要求,set方法和get方法要满足以下格式。严格要求这个方法来写
get方法的要求:
public 返回值类型 get+属性名首字母大写(无参){
return xxx;
}
set方法的要求:
public void set+属性名首字母大写(有1个参数){
xxx=参数;
}
通过“类名.”可以调用set和get方法吗?不行。只有方法修饰符列表中有static的时候,才能使用“类名.”的方式访问。
Person p1=new Person();
int nianLing = p1.getAge();
p1.setAge(20);
System.out.println( p1.getAge()); //20
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】