java面向对象进阶

 面向对象进阶


一、类的成员变量和类变量的区别

在java中,变量可以分为成员变量和局部变量,成员变量是在类范围内定义的变量,局部变量是在方法中定义的变量。

成员变量中分为实例属性和类属性。

static 类属性,属于共享使用,类似于提交作业的服务器。

实例:测试英雄对象中成员的赋值与引用

二、This关键字

java提供了一个this关键字,this关键字总是指向调用该方法的对象。

示例:测试在方法中使用this关键字引用成员变量和成员方法

 

总结:

1、this关键字代表自身

2、this关键字主要用途

  • 用this代表自身类的对象(直接使用this、使用this引用成员变量、使用this调用成员方法)。

  • 用this在自身的构造方法内部调用其他的构造方法。

三、封装

封装是面向对象的三大特性之一。

封装将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法实现对内部信息的操作和访问。

封装是面向对像编程语言对客观世界的模拟,客观世界中的属性均被隐藏在对象内部,外界无法直接操作和修改。

示例:利用封装隐藏英雄属性以及暴露属性赋值和更新的方法

访问控制级别图:

Java访问控制级别表:

访问修饰符

同一个类中

同一个包中

子类中

所有类中

private

default

protected

public

总结:

Java封装的实质:使用访问控制符private隐藏属性,以及public暴露方法。

四、static关键字

Static修饰的成员即静态成员,静态成员包括静态代码块、静态属性和静态方法。

静态成员不属于某个对象,仅属于静态成员所在的类。

示例:模拟个人银行账户取款10次(静态方法)

 

总结:所有的静态成员变量都可以通过类名直接访问。

示例:定义一个计算平方的静态方法

示例:静态代码块程序演示

总结:

如果类中包含多个静态代码块,则Java虚拟机将按照它们在类中出现的顺序依次执行,且每个静态代码块只会被执行一次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值