Java基础语法(6):面向对象

面向对象

1.面向对象的三大特征有:封装性、继承性、多态性。

2.类:    包含两个部分:

      成员变量(属性):将变量位置直接定义在类中,在方法外,即为成员变量。

     成员方法(行为):将普通的方法去掉static关键字,即为成员方法。

3.根据类创建对象的格式:

类名称 对象名 = new 类名称();

4.使用它们的格式如下:

     使用成员变量:对象名.成员变量名

     调用成员方法:对象名.成员方法名(参数)

5.对象的名称其实就是一个局部变量,里面存放的是地址值。真正new出来的对象在堆内存当中,而且成员方法保存的是方法区中的地址。

6.区分局部变量与成员变量

  1. 定义的位置不同:
    1. 局部变量定义在方法内
    2. 成员变量定义在方法外,直接在类中
  2. 内存的位置不同:
    1. 局部变量是在栈内存中的
    2. 成员变量是在堆内存中的
  3. 生命周期不同:
    1. 局部变量随着方法进栈而出现,随着方法出栈而消失
    2. 成员变量随着对象被创建而出现,随着对象被回收而消失
  4. 默认值不同:
    1. 局部变量没有默认值,必须赋值之后才能使用
    2. 成员变量如果没有赋值,那么会有默认值

7.private关键字

如果类当中有一些成员不希望被外界直接访问,那么可以使用private关键字进行修饰,从而达到确保数据安全的目的。

private关键字是面向对象三大特征(封装、继承、多态)之一封装性的重要体现。

8.this关键字

如果成员变量和局部变量重名,那么方法中会根据就近原则优先使用局部变量。此时可以通过this关键字进行二者的区分:

this.成员变量名

9.构造方法

构造方法是指在类当中专门用于创建对象的方法,定义格式:

修饰符 构造方法名(参数类型 参数名称) {

       方法体

       // return; // 最后一行return通常省略

}

当通过new关键字创建对象的时候,实际上就是在调用构造方法。

注意事项

  1. 构造方法根本不写返回值类型,连void都不写。
  2. 构造方法的名称和所在的类名称必须完全一样,连大小写都要一样
  3. 构造方法也是可以进行重载的。
  4. 构造方法如果没有自定义,那么将会默认赠送一个。如果自定义了至少一个,那么就不再赠送默认的。

10.如何定义一个标准的POJO类:

  1. 所有的成员变量都用private修饰
  2. 为每一个成员变量编写一对儿Getter Setter方法
  3. 编写一个无参数的构造方法
  4. 编写一个全参数的构造方法

11.布尔类型的Getter方法

setXxx规则不变,而getXxx需要写成isXxx的形式

猜你喜欢

转载自blog.csdn.net/weixin_41300033/article/details/81570151