Java基础篇---------面向对象(6)

这里主要对面向对象里面的关键字进行比较,基本面向对象里面的关键字搞懂了,面向对象就会慢慢的理解

private关键字

私有化,权限修饰符
修饰的属性会无法直接被外界访问,如果想要访问,必须对外提供set和get方法

final

final修饰类不可以被继承,但是可以继承其他类。

final修饰的方法不可以被覆盖,但父类中没有被final修饰方法,子类覆盖后可以加final。

final修饰的变量称为常量,这些变量只能赋值一次,定义的时候必须有初始值,不能变。

final修饰的引用类型变量,表示该引用变量的引用不能变,而不是引用所指的对象中的数据还是可以变化的;

this&super

  • this与super在继承中的使用
  • 如果子类中出现非私有化的且与父类同名的变量时
  • 子类要访问本类中的变量用this
  • 子类要访问父类中的变量用super

static

通过上面的演示,发现被静态修饰的方法中无法访问非静态的属性和方法。这是为什么呢?

  1. 静态是随着类的加载就加载了。也是随着类的消失而消失了。
  2. 静态优先于对象存在,被对象共享。
  3. 因为静态先存在于内存中无法访问后来的对象的中的数据,所以静态无法访问非静态。而且内部无法书写this。因为这时对象有可能不存在,this没有任何指向。

静态方法使用注意事项:

  1. 静态方法不能访问非静态的成员。但是非静态可以访问静态成员的。

    说明:静态的弊端在于访问出现局限性。好处是可以直接被类名调用。

  2. 静态方法中不允许出现this,super关键字。

main 方法其实也静态的。因为main是程序的入口,是提供给JVM使用的,当在dos中输入java XXX时,会启动JVM,同时JVM会加载以XXX为名称的这个class文件进内存。并扫描其中有没有main方法。若有main方法JVM就会去调用这个main方法。JVM调用main方法,是不会创建对象的,没有对象怎么调用方法,这个方法只能被静态修饰。JVM通过类名调用的。

继承:extends
抽象类:abstract
接口: interface implements

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值