zoukankan      html  css  js  c++  java
  • 修饰符的范围+运算符优先级+构造方法特点+switch参数

    一、修饰符的范围

    修饰符的范围,是否可访问:

    类型 private 无修饰 protected public
    同一类
    同一包中的子类
    同一包中的非子类
    不同包中的子类
    不同包中的非子类

    ( 1 )对于外部类而言,它也可以使用访问控制符修饰,但外部类只能有两种访问控制级别: public 和默认。因为外部类没有处于任何类的内部,也就没有其所在类的内部、所在类的子类两个范围,因此 private 和 protected 访问控制符对外部类没有意义。

    ( 2 )内部类的上一级程序单元是外部类,它具有 4 个作用域:同一个类( private )、同一个包( protected )和任何位置( public)。

    ( 3 ) 因为局部成员的作用域是所在方法,其他程序单元永远不可能访问另一个方法中的局部变量,所以所有的局部成员都不能使用访问控制修饰符修饰。

    • 普通类(外部类):只能用public、default(不写)、abstract、final修饰。
    • (成员)内部类:可理解为外部类的成员,所以修饰类成员的public、protected、default、private、static等关键字都能使用。
    • 局部内部类:出现在方法里的类,不能用上述关键词来修饰。
    • 匿名内部类:给的是直接实现,类名都没有,没有修饰符。

     二、运算符优先级

    运算符优先级:单目乘除位关系,逻辑三目后赋值。

    优先级 运算符 名称 结合性
    1 (),[]   从左到右
    2 !,+(正),-(负),~,++,-- 单目运算符 从左到右
    3 *,/,% 算术乘除 从左到右
    4 +,- 算术加减 从左到右
    5 <<,>>,>>> 位运算 从左到右
    6 <,<=,>,>=,instanceof 关系运算符 从左到右
    7 ==,!=   从左到右
    8 & 按位与 从左到右
    9 ^ 按位异或 从左到右
    10 | 按位或 从左到右
    11 && 逻辑与 从左到右
    12 || 逻辑或 从左到右
    13 ?: 三目运算符 从右到左
    14 =,+=,-=,*=,/=,%=,&=,|=,^=,~=,<<=,>>=,>>>= 赋值运算符 从右到左

    三、构造方法特点

    1.类中的普通方法可以和类名同名。

    2.构造方法由new调用,不能由程序的编写者调用,只能由系统调用。

    3.构造方法不能被继承。

    4.子类可通过super()显示调用父类的构造方法

    四、switch参数

    1.byte,short,char,int及对应的包装类。

    2.Enum类型。

    3.String。

  • 相关阅读:
    python 一个二维数组和一个整数,判断数组中是否含有该整数
    DDD 全称 “Domain-Driven Design”,领域驱动设计
    pytest + allure 生成测试报告
    AttributeError: module 'pytest' has no attribute 'allure'
    BDD的概念
    在im4java中使用GraphicsMagick
    缓存穿透与缓存雪崩
    Linux安装ImageMagick与JMagick完成过程及配置
    Windows/Linux下引用jar包,并用javac/java编译运行
    在CentOS4上安装JMagick
  • 原文地址:https://www.cnblogs.com/cing/p/8178882.html
Copyright © 2011-2022 走看看