封装(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

posted @ 2022-05-05 20:19  开山y  阅读(16)  评论(0编辑  收藏  举报