Java面向对象

Java面向对象

一、this关键字

含义:代表当前new的对象,存储了该对象的地址

1.构造器中使用

放在构造器的首行用来调用本类中的其他重载的构造器

样式:this(参数列表);

2.用来区分与成员变量同名的局部变量

当出现同名时,默认就近原则,如果想要代指成员变量就需要使用this关键字(this.成员变量)调用,当没有同名问题时,指代成员变量的this关键字可以省略

3.this出现的位置

1.当this出现在构造器中的时候,默认指代当前new的对象

2.当this关键字出现在成员方法中的时候,默认指代当前调用成员方法的对象

4.注意事项

1.构造器之间不能使用this相互调用,会出现类似死循环

2.在静态方法(static修饰的方法)中不能使用this

二、static关键字

static 静态的

static关键字是成员修饰符,只能修饰成员,不能修饰局部

静态属于类,成员属于对象

静态内容是独一份的,在类第一次加载完成之后就进行初始化,只初始化一次
静态变量在静态区中(方法区中),所有对象共享的唯一的静态内容
加载内容是先静态后成员

1.静态成员变量与静态方法

成员变量:

不被static修饰的变量 ---->实例变量|成员变量

被static修饰 ---->静态变量|类变量

成员方法:

不被static修饰的方法 ---->实例方法|成员方法

被static修饰 ---->静态方法|类方法

注意:无论是否被static关键字修饰都定义在成员位置,都是成员,只是习惯的称呼不同

2.静态方法或静态成员变量的使用

1.通过对象使用,通过对象的引用调用

​ 引用.静态变量名;
​ 引用.静态方法名(参数列表);

2.通过类名直接调用

​ 类名.静态变量名;
​ 类名.静态方法名(参数列表);

3.使用范围

1.工具类: jdk封装,自己封装… Math,Arrays…
一般为静态工厂,简单,方便用户使用
2.一个类中多个对象的共享资源,独一份,可以使用静态变量定义,但是不决对

4.使用注意事项

1.静态方法中不能使用this,因为静态方法可以通过类名调用,在调用时可以存在对象,所以不允许使用

2.使用要符合逻辑,不能随便定义

三、block块 {}

block块 {} 自成作用域

定义位置执行时机执行作用
局部代码块|普通语句块—>定义在方法或语句块中所在方法被调用的时候顺序执行1.自成作用域 2.具有语义化特点
构造块—>{} 定义在类中方法外创建对象的时候构造块中的代码在编译期间会被编译到要执行的构造器代码上面,所以构造块代码在构造器代码之前执行,如果存在多个构造块,从上到下依次执行一般也是为对象的成员初始化
静态块—>static {} 定义在类中方法外类加载在类第一次加载完成之后,就执行,并且只执行一次, 如果存在多个静态块,从上到下依次执行一般作为一些数据的加载,配置…在类加载完成之后就执行,并且只执行一次,后续不能调用,不需要调用,可以为静态内容做初始化操作

执行顺序:静态块–>main–>创建对象了–>构造块–>构造器

注意:关于构造块:构造块的代码会被编译到要执行的构造器代码的上面

四、debug的作用

1.追踪程序的执行流程
2.定位异常的位置
3.查看程序执行过程中变量的变化情况
4.根据程序的执行过程学习第三方框架的源码

五、封装

面向对象的三大特性: 封装 继承 多态
封装: 隐藏内部的实现细节,对外提供公共的访问方式

优点:
隐藏内部的实现细节,对外提供公共的访问方式
提高安全性
提高复用性

体现:
类,方法等都是封装的体现
属性私有化是封装的体现
私有是封装
封装不仅仅是私有

使用:使用private私有化成员变量,并使用一对set,get的公共的方法

六、Javabean

代表模板类,根据对象抽取共性定义的类,统一称为javabean
定义javabean的规范:
1.类是公共的
2.至少提供一个空构造,按需提供带参
3.属性私有化
4.公共的访问方式

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值