A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 原子弹 中级黑马   /  2014-1-5 01:06  /  1094 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

       关于面向对象封装函数后的     set    和   get    一个设置的和一个取值的是不是可以和在一起写
class Demo0707 {
public static void main(String[] args) {
  
  for (int i = 0;i<10 ;i++ ) {
   method(new Car());
  }
  
}
public static void method(Car cc){
  
  cc.setColor ( "red");
  //cc.run();
  cc.setNum(8);
  System.out.println(cc.getNum());
  System.out.println(cc.getColor());
}
}
class Car {
private String color = "blue";
private int  num =10;
public void run(){
  System.out.println(color+"..."+num);
}
public void setNum(int a){
  if (a>0&&a<150) {
   num = a;
  }else{
   System.out.println("火星人");
  }
}
public int getNum(){
  return num;
}
public void setColor(String b){
  color = b;
}
public String getColor(){
  return color;
}

}

5 个回复

倒序浏览
看需求,你自己练习的话,set不写都是可以的,可以直接在构造函数里设置参数。
正规开发的时候,必须要的。两种方法返回值类型是不一样的。
  1. class Car
  2. {
  3.         private String color;
  4.         private int  num ;
  5.         Car(String color,int num)
  6.         {
  7.                 this.color = color;
  8.                 this.num = num;
  9.         }
  10. }
复制代码
回复 使用道具 举报
一般情况不可以,因为二者的返回类型不同
回复 使用道具 举报
在开发的时候基本上都加上了,方面用到时调用
回复 使用道具 举报
这个根据自己功能的需要,例如一些权限问题,无权修改的就不需要set方法,如果需要的就可以同时出现
回复 使用道具 举报
拜谢各位大神
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马