黑马程序员----java基础之面向对象

来源:互联网 发布:大岭山淘宝培训 编辑:程序博客网 时间:2024/04/30 23:37

  封装:  是隐藏对象的属性和细节,仅对外提供公共的访问方式。

 好处:将变化隔离

              便于使用

              提供重用性

              提供安全性

  封装的原则:

 将不需要对外提供的内容隐藏起来

  将属性都隐藏,提供公共方法对其访问。


private: 私有的,权限修饰符  :用于修饰类中的成员(成员变量,成员方法),  私有属性只能在本类中有效。

成员变量对应的有两个方法,get和set  :

class   Person
{
    private int age ;
    public void setAge(int a)
    {
        age = a ;
    }
    public int getAge()
    {
        return age;
    }
}

私有private  仅仅是封装的一种表现形式,私有不等于封装。


使用私有的好处是,可以在set中设置属性的访问范围,提高代码的健壮性。

例如:

class   Person
{
    private int age ;
    public void setAge(int a)
    {
        if (a>=0 && a<=150)
        {
         age = a ;
        }else
        {
            System.out.println("输入年龄不合法");
        }
    }
    public int getAge()
    {
        return age;
    }
}


构造函数:

特点:1  函数名与类名相同

         2  不可以定义返回值类型

         3  不可以些return语句

作用: 用于给对象初始化

注意:多个构造函数是以重载的形式存在的

定义格式:

class 类名
{
    访问权限 类名称(类型1 参数1,类型2 参数2,。。。。)
        {
            程序语句;
            //没有返回值
    }
}


构造方法在创建对象之后就会被调用。


构造方法可以被重载。

person(){}

person (String name)
{
    this.setNmae(name);
}


person (String name,int Age)
{
    this.setName(name);
    this.setAge(age);
}

三种重载的形式。

在主函数调用的时候,就可以根据传入的值不同调用。

Person  p1 = new Person("张三");

Person p2 =  new Person("李四","30");



构造函数和一般函数的不同:

1:在写法上不同

2:运行不同

3:构造函数在对象义建立就运行,一般方法在调用的时候才会运行。

4:构造方法是给对象初始化,一般方法是给对象添加具备的功能。

5: 一个对象建立,构造函数只运行一次;而一般方法可以被该对象调用多次。


 构造代码块:

class Person{

{

System.out.peintln();

}

}

构造代码块:

作用:给对象进行初始化。

对象一建立就运行,而且优先于构造函数执行。

区别:

构造代码块是给所有的对象进行统一初始化。

构造函数是给相对应的对象初始化。


this关键字:

this强调的是调用本类中的方法。

this的其他作用:1:表示类中的属性

                            2: 可以使用this调用本类中的方法

                           3 :this表示当前对象。

this代表他所在方法所属对象的引用,也就是说,哪个对象在调用this所在类中的方法,this就代表哪个对象。

this可以调用构造函数,格式:this();

注意:this调用构造函数的时候,必须写在构造函数的首行

            一个类中,必须有一个没有this()调用的构造函数,作为出口。


构造函数间的调用只能用this()。







0 0
原创粉丝点击