instanceof是Java的一个二元操作符,Java的保留关键字;作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据。可以用在继承中的子类的实例是否为父类的实现。instanceof 一般情况下 用在对象类型的强制转换。
按优先级从高到低排列如下:[ ] ( ) ++ -- ! ~ instanceof * / % + - << >> >>> <> < = > \ == != &^& & || ? := op= 。
Java 的表达式就是用运算符连接起来的符合Java 规则的式子.运算符的优先级决定了表达式中运算执行的先后顺序。没有必要去记忆运算符号的优先级别,在编写程序时可尽量的使用括号来实现你想要的运算次序,以免产生难以阅读或含糊不清的计算顺序.运算符的结合性决定了并列相同级别的运算符的先后顺序。
一、算术运算符:
单目:+(取正)-(取负) ++(自增1) - -(自减1)
双目:+ - * / %(取余)
三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。
二、关系运算:
== != > < >= <=
三、逻辑运算符:
|(或)&(且) !(非)
&:当两边同时为真时,结果为真,否则为假
| :当两边有一边为真时,结果为真,否则为假
! :真值变假值,假值变真值
四、赋值运算符
= += -= *= /= %= &= ^= |= <<= >>=
java中运算符:
算术运算符:+,-,*,/,%,++,--
关系运算符:>,<,>=,<=,==,!=
布尔逻辑运算符:!,&&,||
位运算符:<<,>>,>>>,&,|,^
赋值运算符=,及其扩展赋值运算符如+=,-=,*=,/=
条件运算符?:
其他:分量运算符.
下标运算符[]
实例运算符instanceof
内存分配符new
强制类型转换运算符(类型)
方法调用运算符()
运算符的运算顺序:
运算符优先级表
优先级 运算符 结合性
1 () [] . 从左到右
2 ! +(正) -(负) ~ ++ -- 从右向左
3 * / % 从左向右
4 +(加) -(减) 从左向右
5 << >> >>> 从左向右
6 < <= > >= instanceof 从左向右
7 == != 从左向右
8 &(按位与) 从左向右
9 ^ 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 = += -= *= /= %= &= |= ^= ~= <<= >>= >>>= 从右向左
1. 编写应用程序,求1!+2!+…+10! 2.一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3. 编程找出1000以内的所有完数。 3.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 4.打印九九乘法表
一般的年份只要被4整除,逢百年的年要同时被400整除。
关于公历闰年是这样规定的:地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分46秒。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688 日,故每四年增加一日,这一年有366日,就是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900 年、2100年就不是闰年。
我手里拿着刀,没法抱你。我放下刀,没法保护你。——《死神》
访问权限:由小到大 private ->default->protected->public private: 类:没有 方法:只能在当前类访问 属性:只能在当前类访问 default: 不是同一包就不行 类:有 如果是子类 方法:只能在当前包使用 属性:只能在当前包使用 protect: 类:有 方法:当前包可以的,当前类,子类 属性:当前包可以的,当前类,子类 public : 类:有 都可以访问 方法:都可以访问 属性:都可以访问 类:public default 不能夸包,只能在当前包 方法:private default protected 不同包不可以 public 属性:方法一样
1.接口必须要具体类实现才有意义,所以必须是public 2. 接口中的数据对所有实现类只有一份,所以是static 3.要使实现类为了向上转型成功,所以必须是final的
|