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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 李东城 于 2013-2-10 23:17 编辑

有如下代码,请教为什么我用
  1. public class Persion1 {
  2.     private int age;
  3.     private String name;
  4.     private String banji;
  5.     public Persion1(int age,String name,String banji){
  6.         this.age=age;this.name=name;this.banji=banji;
  7.     }
  8.     public Persion1() {
  9.         
  10.     }
  11.     public void show(){
  12.              System.out.println(name+"的年龄是"+age+"所在班级是"+banji);      
  13.         }
  14.     }




  15. public class TestPersion1 {
  16.     public static void main(String[] args) {
  17.     Persion1 xiaohong=new Persion1(18,"小红","三班");
  18.     Persion1 xiaoming=new Persion1();
  19.     xiaoming.name="小明";       这个地方报错呢
  20.    
  21.     xiaohong.show();
复制代码
构造方法的重载在对象属性私有化的情况下也能完成创建对象,而使用默认的构造方法时就得在Persion类里使用get和set方法呢

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

4 个回复

倒序浏览
public class Persion1 {
    private int age;
    private String name;  //因为这些成员变量是私有化的  只可以在本类中调用  外部调用就要用到get和set方法  ,传到构造方法里面他的调用时this.name  传到了这个类的本身里面去了 所以是内部调用 就可以
    private String banji;
    public Persion1(int age,String name,String banji){
        this.age=age;this.name=name;this.banji=banji;
    }
    public Persion1() {
        
    }
    public void show(){
             System.out.println(name+"的年龄是"+age+"所在班级是"+banji);      
        }
    }




public class TestPersion1 {
    public static void main(String[] args) {
    Persion1 xiaohong=new Persion1(18,"小红","三班");
    Persion1 xiaoming=new Persion1();
    xiaoming.name="小明";       这个地方报错呢
   
    xiaohong.show();

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
你要了清楚 public  private protected  等 这些权限 原理问题 搞清楚,,,
回复 使用道具 举报
被private修饰符修饰的成员变量,能在该类类内部访问,对外是提供方法的;
回复 使用道具 举报
被private修饰后的方法或者变量  在限权上只有在本类中才能直接访问   而构造函数起作用就在于初始化本类中的成员 构造方法再其类的内部  自然代码构造方法的重载在对象属性私有化的情况下也能完成创建对象   由于方法或者变量被private修饰,外部是不能直接访问的,所以就需要暴露个方法供外部访问也就是set 和 get 方法 他们的限权一半都是public 或者默认 这句是为了能让外部看的到 进而用这个方法去访问类内私有成员

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马