标签:github 中括号 ctf enc volatil java开发 type 变量 ctc
常用关键字53个(含2个保留字):
常数:用于修改字段或局部变量的声明。
指定跳转到标签,找到标签后,程序将处理从下一行开始的命令
可跨包
当前包内可用
当前类可用
public class A(){}花括号里是已实现的方法体,类名需要与文件名相同
public interface B(){}花括号里有方法体,但没有实现,方法体句子后面是英文分号;结尾
public abstract class C(){}介于类与接口中间,可以有,也可以没有已经实现的方法体
实现接口public class A implements B(){}
继承类public class A extends D(){}
A a=new A();A表示一个类
将所有相关的类放在一个包类以便查找修改等
引入包
public void A(){}其他需要反回的经常与return连用
if(条件语句{执行代码}
如果条件语句成立,就开始执行{}里面的内容
常与if连用,用法相同:
if(...){...}else{...}
while(条件语句){执行代码}
通长与while连用 do {} while()
for(初始化循环变量;判断条件;循环变量值{}
直接跳出循环,执行循环体后的代码
中断本次循环,并开始下一轮循环
代码如下
switch(表达式){
case 常量表达式1:语句1;
...
case 常量表达式2:语句2;
default:语句;
}
返回方法指定类型的值或结束方法的执行
一个二元操作符,和==、>、<是同一类的。测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据
属性和方法都可以用static修饰,直接使用【类名.属性和类名.方法名】。
只有内部类可以使用static关键字修饰,调用直接使用【类名.内部类类名】进行调用。
static可以独立存在,静态代码块,初始化静态变量。
常见public void paint(Graphics g){super.paint(g);...}
调用当前类中的方法(表示调用这个方法的对象)this.addActionListener(al):等等
native 关键字可以应用于方法,以指示该方法是用 Java 以外的语言实现的。
在Java虚拟机进行浮点运算时,如果没有指定strictfp关键字时,Java的编译器以及运行环境在对浮点运算的表达式是采取一种近似于我行我素的行为来完成这些操作,以致于得到的结果往往无法令人满意。
一旦使用了strictfp来声明一个类、接口或者方法时,那么所声明的范围内Java的编译器以及运行环境会完全依照浮点规范IEEE-754来执行。因此如果想让浮点运算更加精确,而且不会因为不同的硬件平台所执行的结果不一致的话,那就请用关键字strictfp。
可以将一个类、接口以及方法声明为strictfp,但是不允许对接口中的方法以及构造函数声明strictfp关键字
对象在持久化或网络传输时,都需要序列化,而有一些没有必要出现在序列化结果中的字段,就可以添加关键词 transient
一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块
{ //执行的代码,其中可能有异常。一旦发现异常,则立即跳到catch执行。否则不会执行catch里面的内容 }
{ //除非try里面执行代码发生了异常,否则这里的代码不会执行 }
{ //不管什么情况都会执行,包括try catch 里面用了return ,可以理解为只要执行了try或者catch,就一定会执行 finally }
语法:throw (异常对象);
throw e;
(用在声明方法时,表示该方法可能要抛出异常)
如下例子:
public void doA(int a) throws Exception1,Exception3{......}
标识符就是用于给 Java 程序中变量、类、方法等命名的符号。
按照【阿里巴巴Java开发手册】执行比较好。下面摘抄几个:
反例:_name / name / $name / name_ / name$ / name
说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。
正例:alibaba / taobao / youku / hangzhou 等国际通用的名称,可视同英文。
反例:DaZhePromotion [打折] / getPingfenByName() [评分] / int 某变量 = 3
正例: localValue / getHttpMessage() / inputUserId
正例:定义整形数组 int[] arrayDemo;
反例:在 main 参数中,使用 String args[]来定义。
反例:定义为基本数据类型 Boolean isDeleted 的属性,它的方法也是 isDeleted(),RPC框架在反向解析的时候,“误以为”对应的属性名称是 deleted,导致属性获取不到,进而抛出异常。
正例:应用工具类包名为 com.alibaba.ai.util、类名为 MessageUtils(此规则参考 spring的框架结构)
反例:AbstractClass“缩写”命名成 AbsClass;condition“缩写”命名成 condi,此类随意缩写严重降低了代码的可阅读性。
操作符 描述
+ 加法
- 减法
* 乘法
/ 除法
% 取余
++ 自增
-- 自减
运算符 描述
== 检查如果两个操作数的值是否相等,如果相等则条件为真。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。
> 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。
>= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。
操作符 描述
& 如果相对应位都是1,则结果为1,否则为0
| 如果相对应位都是0,则结果为0,否则为1
^ 如果相对应位值相同,则结果为0,否则为1
~ 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。
>> 按位右移运算符。左操作数按位右移右操作数指定的位数。
>>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。
操作符 描述
&& 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。
|| 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。
! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。
操作符 描述
= 简单的赋值运算符,将右操作数的值赋给左侧操作数
+= 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数
-= 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数
*= 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数
/= 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数
(%)= 取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数
<<= 左移位赋值运算符
>>= 右移位赋值运算符
&= 按位与赋值运算符
^= 按位异或赋值操作符
|= 按位或赋值操作符
条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。
variable x = (expression) ? value if true : value if false
比如 b = (a == 1) ? 20 : 30;
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。
instanceof运算符使用格式如下:
( Object reference variable ) instanceof (class/interface type)
比如: boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真
字面量是指由字母,数字等构成的字符串或者数值,它只能作为右值出现,所谓右值是指等号右边的值,
如:int a=123这里的a为左值,123为右值。
标签:github 中括号 ctf enc volatil java开发 type 变量 ctc
原文地址:https://www.cnblogs.com/wang7/p/10143890.html