黑马程序员技术交流社区

标题: 面向对象 [打印本页]

作者: 原子弹    时间: 2014-1-5 01:06
标题: 面向对象
       关于面向对象封装函数后的     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;
}

}

作者: DOOR    时间: 2014-1-5 03:00
看需求,你自己练习的话,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. }
复制代码

作者: 净坛使者    时间: 2014-1-5 06:21
一般情况不可以,因为二者的返回类型不同
作者: 小小菜鸟    时间: 2014-1-5 11:06
在开发的时候基本上都加上了,方面用到时调用
作者: 曹春洋    时间: 2014-1-5 11:18
这个根据自己功能的需要,例如一些权限问题,无权修改的就不需要set方法,如果需要的就可以同时出现
作者: 原子弹    时间: 2014-1-5 21:08
拜谢各位大神




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2