黑马程序员技术交流社区

标题: 这两个代码有什么区别啊!!谢谢 [打印本页]

作者: ShadowDancer    时间: 2015-1-19 09:23
标题: 这两个代码有什么区别啊!!谢谢


  1. public class Test {
  2.         //1
  3.         class Person{
  4.                 private String name;
  5.                 private int age;
  6.                 Person(String name, int age){
  7.                         this.name = name;
  8.                         this.age = age;
  9.                 }
  10.         }
  11.         //2
  12.         class Person1{
  13.                 private String name;
  14.                
  15.                 public void setName(String name){
  16.                         this.name = name;
  17.                 }
  18.                 public String getName(){
  19.                         return this.name;
  20.                 }
  21.                
  22.                 private int age;
  23.                
  24.                 public void setAge(int age){
  25.                         this.age = age;
  26.                 }
  27.                 public int getAge(){
  28.                         return this.age;
  29.                 }
  30.         }

  31. }
复制代码

捎带问一下  怎样将java文件发到论坛  就是那有格式的代码啊???

作者: vermouth    时间: 2015-1-19 09:56
第一个是构造函数传递参数
第二个是封装的思想,setXxx  getXxx 作为数据的存储取出器(好吧具体叫什么我忘了,但是大概这意思)

第一个在一个对象创建时候属性值就确定了,第二个可以建立空对象,再set属性值
作者: ShadowDancer    时间: 2015-1-19 12:49
vermouth 发表于 2015-1-19 09:56
第一个是构造函数传递参数
第二个是封装的思想,setXxx  getXxx 作为数据的存储取出器(好吧具体叫什么我忘 ...

好的  那么问题来了???
什么时候使用第一种
什么时候使用第二种
作者: wocan23    时间: 2015-1-19 15:45
创建对象的时候想值的时候就用第一个,修改时用第二个,一般一个类中都包含这些方法
作者: ShadowDancer    时间: 2015-1-19 20:39
wocan23 发表于 2015-1-19 15:45
创建对象的时候想值的时候就用第一个,修改时用第二个,一般一个类中都包含这些方法 ...

谢谢了!!!




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