zoukankan      html  css  js  c++  java
  • 从头学Java【3】——几个重要的关键字汇总

    几个重要的关键字汇总(a表示怎么用?b表示什么时候使用?c表示注意事项)
    (1)abstract关键字
      a.可以修饰类、方法
      修饰类时:不能实例化对象;必须被子类继承;
      修饰方法时:没有方法体;必须写在抽象类中;必须被子类重写,若子类不重写,也声明为抽象类;
      b.一般现实中不存在的事物使用抽象类;父类方法,各子类实现方式各不相同时,则此方法在父类中声明为抽象方法;
      c.不能与这些关键字一起使用:private、static、final;不能修饰构造方法;
    (2)static关键字
      a.可以修饰成员变量、成员方法、代码块、内部类
      修饰成员变量时 ==> 静态变量: 在类加载时,给静态变量在方法区中分配空间,并赋初始值属于类所有,类的所有对象共享一个静态变量.访问方式: 类名.静态变量名
      修饰成员方法时 ==> 静态方法:访问方式:类名.静态方法();
      修饰代码块时   ==>静态代码块: 在类加载时执行,仅执行一次.修饰内部类时 ==>静态内部类:相当与静态变量,可以用访问修饰符修饰,访问方式:外部类名.内部类  名  引用名 = new 外部类名.内部类名()
      b.静态变量: 所有对象共享一个变量.静态方法: 当一个方法中不关联任何一个成员变量时,与对象无关时;静态代码块:当需要加载某些外部资源时使用;静态内部类  可以用来访问外部静态成员;

      c.静态成员不能直接访问非静态成员;
    (3)final关键字
      a.可以修饰类,成员方法,成员变量,静态变量,局部变量;
      修饰类时: final类不能被继承;
      修饰成员方法: final成员方法不能被子类重写;
      修饰成员变量:给final成员变量赋值两种方式:  A、 通过构造方法赋值。B 、在声明变量时直接赋值;
      修饰静态变量: 在声明的同时赋值;不可改变;==》为常量 ;命名时所有的字母大写。
      修饰局部变量:基本类型仅赋值一次,不可改变;引用类型引用的“地址”不能改变,不能引用其他的对象。但所引用对象的内容是可以改变;
      b.当不想成员被修改时;
      c.final成员变量仅赋值一次,不可改变,默认构造方法不能给他赋初始值。在显示的构造方法赋值要在所有构造方法都赋值;
    (4)this关键字
      a.this是一个引用,在堆区当前对象的内部存放,指代当前对象;
      this可以访问对象的哪些内容this.成员变量名,this.成员方法名,构造方法中this(参数);
      b.修饰成员变量和成员方法 ,可省略不写;当局部变量与成员变量同名时,访问成员变量使用"this.成员变量" 用于区分局部变量;类的构造方法中用来访问类的其他构  造方法:this(参数)写在构造方法的第一行.
    (5)super关键字
      a.super不是引用.super代表的是子类对象中的父类特征;可以访问父类的成员变量:super.成员变量;可以访问父类的成员方法:super.成员方法();可以访问父类的构造方  法:super(参数);
      b.在子类中使用在子类的成员方法中,访问父类的成员变量或成员方法;区分与子类同名的成员变量和成员方法;在子类的构造方法中,调用父类的构造方法,必须写在子类  构造方法的第一行.
      c.如果调用父类的有参构造方法:则在子类的构造方法中必须显示调用;super只能调用直接父类方法;

    6.访问权限符
      (1)类的访问权限:public/默认的没有,公共类在其他包中可以访问到;
      (2)成员的访问权限

      访问权限
    当前类  
    当前包
    派生类   
    其他位置
      private
    可以      
      默认的                可以
    可以
       
      protected 
    可以
    可以
    可以
     
      public
    可以
    可以
    可以
    可以


                  
      

  • 相关阅读:
    hdu2243之AC自动机+矩阵乘法
    jstl
    HDU 3360 National Treasures 奇偶匹配的最低点覆盖
    【UVA】11992
    what is the difference between definition and declaration in c
    UVALive 6485 Electric Car Rally (BFS,PQ)
    Android发展_备份短信
    vxWorks 命令
    【C++智能指针 auto_ptr】
    Get and Post(Unity3D六个发展)
  • 原文地址:https://www.cnblogs.com/entrepre/p/7153180.html
Copyright © 2011-2022 走看看