阶段性手记

来源:互联网 发布:adobe for mac 编辑:程序博客网 时间:2024/05/01 09:20
package test0504;//age私有(最小)化  防止不“合法(合常理的数值)”,类以外及时建立对象也不能直接访问//但是人应该有年龄,就是在person类中提供对应访问age的方式//一个私有属性对应两个方法(set   get)(麻烦&高级工具)//私有仅仅是封装的一种表现形式   封装不是私有//对外提供访问方式  可在访问方式中加逻辑判断//对访问语句进行操作    提高代码健壮性//一般需要隐藏class person{    private int age;    private String name;    person()//构造函数   用于给对象初始化    {        System.out.println("naem: "+name+",,age: "+age);        cry();    }    person(String n)    {        name=n;        System.out.println("naem: "+name+",,age: "+age);        cry();    }    person(String name , int a)    {        //this.name=name;//        this(name);    //构造函数键调用   构造函数间互相调用  p(name)  this代表对象  必须是构造函数中的第一句   初始化动作要先执行  初始化中还有初始化  更细的初始化先执行        age=a;       //以上不能用在一般函数间        System.out.println("naem: "+name+",,age: "+age);        cry();    }    //构造代码块    {        System.out.println("他们都会哭");//不同对象的共性    }    public void setage(int a)    {        if(a>0&&a<=130)            age=a;        else            System.out.println("NOOOOOOOO   illegel age");    }    public int get()    {        return 0;    }    void speak()    {        System.out.println("age="+age);    }    public void cry()    {        System.out.println("Cry");    }    public boolean compare(person p)    {//当定义类中的功能时,该函数内部要调用到该函数的对象时,用        //this表示这个对象  但凡本类功能内部使用到本类对象        return this.age==p.age; //代码简化   不必要用if语句.........    }}class persondemo{    public static void main(String arr[])    {        /*person p=new person();        p.setage(-11);        p.speak();*/        /*2person p1=new person();        person p2=new person("haha");        */        person p3=new person("haha",20);    }}

总结:私有化 构造函数  隐藏

0 0
原创粉丝点击