12 面向对象 修饰符

This关键字:表示一个对象

This就好比预先划定的一块地皮 留给某个开发商的 反正无论市政府的领导怎么变 这块地皮就在这 一定要卖 但到底属于哪个开发商 就看是谁买下的

哪个对象调用了这个函数那么this就指代哪个对象

作用:解决了局部变量和成员变量名称相同的问题

 

应用:给函数传参数:

person(String name)

{

         this.name= name;

}

 

Static关键字:表示没有特有数据 意思是只属于这个函数的数据

特点是:

在内存中存在时间特别长尽量避免吧

随着类的加载而加载

先于对象存在而存在

被所有对象共享

可以类名调用

应用:

1 在多线程中 比如卖票程序 将共享数据使用static处理 实现共享的效果

2 类名调用可以不用新建对象很方便有时候甚至会利用不用新建对象这一点来使用这个特性(因为有的时候无法新建对象调用方法)例如懒汉式和饿汉式。单例设计模式无法直接建立对象,而是通过static方法进行getInstance()的类名调用来建立对象。

懒汉式代码:

Class Peron

{

         Private Person p = null;

         Private Person(){}

 

         Public static Person getInstance()

{

         If(p == null)

                   P =new Person();

         Return p;

}

}

 

这时候调用:

 ClassSingleDemo

{

         Publicstatic void main(String[] args)

         {

                   Personp = Person.getInstance();//(相当于绕过了new Person())

}

}

注意:

静态方法只能访问静态成员

不能使用this和super关键字(因为这俩是随着对象的调用而存在而static是随着类的加载而存在所以矛盾了)

static是成员修饰符不能修饰局部

比如在方法内部的内部类就不能用static修饰

 

 

Final关键字:

可以修饰类方法 变量

被修饰的类不能被继承

被修饰的方法不能被覆盖

被修饰的变量只能赋值一次

内部类只能访问final修饰的局部变量

用法:保护数据

 

权限:

Private:私有 用处:保护数据

Public:公有

不能用来修饰内部类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值