类 和 对象

目录

一、初步认识:

1.1 面向对象概念:

1.2 面向对象编程的核心:

二、类和类的实例化:

2.1 基本语法:

2.2 类的实例化 

2.3 类的成员

2.3.1 字段/属性/成员变量

2.3.2 方法

2.3.3 代码块:

2.4 封装:

2.4.1 面向对象思想的特征:

2.4.2 封装的概念:

2.4.3 访问权限修饰限定符:

2.4.4 getter 和setter方法:

2.4.5 封装的意义:

2.5 匿名对象:


一、初步认识:

JAVA是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。

1.1 面向对象概念:

1.面向对象是思考问题的一种思考方式,是一种思想。
2.类就是一类对象的统称。对象就是这一类具体化的一个实例。
3.面向对象的好处:将复杂的事情变简单了,只要面对一个对象就行。

1.2 面向对象编程的核心:

  • 找对象  :由类产生
  • 创建对象
  • 使用对象

二、类和类的实例化:

2.1 基本语法:

//创建类

class <class_name>{

    field;     //成员属性

    method;     //成员方法

}

//实例化对象

<class_name> <对象名> = new <class_name>();
  • 成员变量定义在方法的外部,类的内部。
  • 成员变量不赋初值不会报错。

2.2 类的实例化 

通过一个类可以实例化多个对象。

e.g

Person person = new Person();
  • Perosn为类名,person为引用变量,在栈上开辟内存。
  • new 关键字用于创建一个对象的实例 。
  • 使用 . 来访问对象中的属性和方法:

2.3 类的成员

类的成员可以包含以下:字段、方法、代码块、内部类和接口等。

2.3.1 字段/属性/成员变量

在类的内部,方法的外部。

1、普通成员变量

2、静态成员变量:当前成员变量被static修饰

注:

  • 访问时,建议通过类名.静态成员变量访问。(成员方法同理)
  • 静态不需要实例化对象。
  • 静态成员变量不在对象里,而在方法区。
  • 静态属性和对象无关,只和当前类有关。

2.3.2 方法

  • 在普通的成员方法中,不能定义静态成员变量。
  • 静态的成员方法通过类名调用。
  • 普通方法内可以调用静态方法,因为静态方法不依赖于对象,反之则不能。

1、构造方法:

构造方法是一种特殊方法,使用关键字new实例化新对象时会被自动调用,用于完成初始化操作。

规则:

  • 无返回值。
  • 方法名和类名一致。

注:

  • 如果类中没有提供任何的构造函数,那么编译器会默认生成一个不带有参数的构造函数。
  • 若类中定义了构造方法,则默认的无参构造将不再生成。
  • 构造方法支持重载. 规则和普通方法的重载一致。

2.3.3 代码块:

  • 本地代码块:在方法内部定义的
  • 实例代码块(构造代码块):在类的里面,方法的外面,一般用于初始化实例成员变量。
  • 静态代码块:用static定义,用于初始化静态成员属性。

1、代码块的出现是为了在合适的时候处理某些数据。

2、代码块执行顺序:静态代码块,实例代码块,构造方法

3、静态代码块只执行一次。

4、不实例化对象,就只执行静态代码块。

2.4 封装:

2.4.1 面向对象思想的特征:

继承,封装,多态

2.4.2 封装的概念:

语法层次上来说,字段和方法都被private修饰,此时就说把这个字段或这个方法进行了封装。

2.4.3 访问权限修饰限定符:

  • 被 public 修饰的成员变量或者成员方法, 可以直接被类的调用者使用。
  • 被 private 修饰的成员变量或者成员方法, 只能在当前类中使用,不能被类的调用者使用。

2.4.4 getter 和setter方法:

    当我们使用 private 来修饰字段的时候, 无法直接使用这个字段,此时如果需要获取或者修改这个 private 属性, 就需要使用 getter / setter 方法。

2.4.5 封装的意义:

  • 安全
  • 降低了对类的使用成本

2.5 匿名对象:

  • 匿名对象只能在创建对象时使用。
  • 没有引用的对象成为匿名对象。
  • 如果一个对象只使用一次,可以考虑使用匿名对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值