java核心技术卷一笔记(对象与类)

封装:封装是将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式。对象中的数据称为实例域,操纵数据的过程称为方法。对于每个特定的类实例(对象)都有一组特定的实例域值。这些值的集合就是这个对象的当前状态(state)。实现封装的关键在于绝对不能让类中的方法直接访问其他类型的实例域。程序仅通过对象的方法与对象数据进行交互。

类之间的最常见的关系:

  • 依赖:一个类A的方法操纵另外一个类B的对象,就说A依赖B。
  • 聚合:一个A对象包含一些B对象。聚合关系意味着类A的对象包含类B的对象。
  • 继承:通过扩展一个类来创建另外一个类的的过程称为继承。子类具有基类全部的属性和方法。

static:static方法就是没有this方法。在static方法内部不能调用非静态方法,反之可以。而且在没有创建任何对象的前提下,仅仅通过类本生来调用static方法。

1)static变量

static变量也称作静态比变量,静态变量和非静态变量的区别在于,类中只有一个这样的静态变量,被所有对象copy,可以直接通过类引用这个变量。

static是不允许用来修饰局部变量。

2)static方法

static方法不能访问非静态成员方法和非静态成员变量,但是在非静态成员方法中是可以访问静态成员方法/变量的。可以直接通过类来访问方法。

下面两种情况下使用静态方法:

  • 一个方法不需要访问对象状态,其所需参数都是通过显式参数提供。

一个方法只需要访问类的静态域。

3)static代码块

static关键字还有一个比较关键的作用就是用来形成静态代码块以优化程序性能。static块可以在类中的任何地方,允许有多个static块。当类初次被加载时,会按照static块的顺序来执行每个static块,并只会执行一次。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值