A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 0825梁磊 中级黑马   /  2015-9-10 13:03  /  344 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

关键字
       (1)概述:被Java语言赋予特定含义的单词叫做关键字
       (2)特点:全部小写
       (3)注意事项:
              Agotoconst作为保留字存在,目前不使用,将来在JDK升级中有可能使用
              B:类似于Notepad++这样的高级记事本会对关键字有特殊颜色标记
(4)判断一下是否是关键字:
class,HelloWorld,public,static,void,main(不是),String,System

private关键字☆
       (1)私有的意思,可以修饰成员变量和成员方法
       (2)特点:
              private修饰后的成员只能在本类中被访问
       (3)private的应用:
              以后再写一个类的时候:
                     把所有的成员变量给private
                     提供对应的getXxx()/setXxx()方法
this关键字☆
       (1)代表当前类的引用对象
              记住:哪个对象调用方法,该方法内部的this就代表那个对象
       (2)this的应用场景:
              A:解决了局部变量隐藏成员变量的问题
当局部变量和成员变量名称一样时,通过this来获取到成员变量

★this和super的区别
分别是什么?
this:代表本类对应的引用
super:代表父类存储空间的标识,可以理解为父类引用,可以操作父类信息
怎么用呢?
调用成员变量
this.成员变量
super.成员变量
调用构造方法
this(...)
super(...)
调用成员方法
this.成员方法
super.成员方法
★super不能调用父类中私有的方法或者成员,因为私有的只有父类本身能访问

static关键字☆
       (1)可以修饰成员变量和成员方法。
       (2)静态的特点:
              A:随着类的加载而加载(回想main方法)
              B:优先与对象存在
              C:被类的所有对象共享(通过这点来考虑是否应该定义为static)
                     这其实也是我们判断该不该使用静态的依据。
                     举例:饮水机和水杯的问题思考
饮水机(用静态修饰)
水杯(不能用静态修饰)
              D:可以通过类名调用(也可以是对象,不过建议还是通过类名)
这里仅限static修饰的变量和方法,而类除外
E:静态修饰的成员,我们一般称之为类成员
F:静态方法只能访问静态的成员变量和静态的成员方法
(3)静态的内存图
方法区中有一个静态区
(4)静态的注意事项;
在静态方法中没有this对象,因为静态是随着类的加载而加载的,this是随着对象的创建而存在的,静态比对象先存在。
(5)静态变量和成员变量的区别
              A:所属不同
                     静态变量:属于类,类变量
                     成员变量:属于对象,对象变量,实例变量
              B:内存位置不同
                     静态变量:方法区的静态区
                     成员变量:堆内存
              C:生命周期不同
                     静态变量:静态变量是随着类的加载而加载,随着类的消失而消失
                     成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失
              D:调用不同
                     静态变量:可以通过对象名调用,也可以通过类名调用
                     成员变量:只能通过对象名调用
(6)main方法是静态的,因为它是被虚拟机调用的,虚拟机调用它时不用创建对象,直接类名调用就可以了(类名.main
              public:权限最大
              static:不用创建对象调用
              void:返回值给jvm没有意义
              main:就是一个常见的名称。
              String[]args:可以接收数据,提供程序的灵活性
                     格式:java MainDemo hello world java
                              java MainDemo 10 20 30

final关键字☆
       (1)final是最终的意思
       (2)特点:
              final可以修饰类,该类不能被继承
              final可以修饰方法,该方法不能被重写(覆盖,复写)
              final可以修饰变量,该变量不能被重新赋值,因为这是一个常量
★常量:
字面值常量
“hello”,10,true
自定义常量
final int x = 10;
       (3)面试题:
              final修饰局部变量的问题:
                     a:基本类型,值不能发生改变
                     b:引用类型,地址值不能发生改变,但是对象的内容是可以改变的
              final修饰变量的初始化时机
                     a:final修饰的变量只能赋值一次
                     b:在构造方法完毕前。(非静态的变量)


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马