java程序的基本要素是_JAVA-编程规范及基本概念

编程规范不是语法, 是业内约定俗成的规则,程序员的潜规则。

Java的编程规范如下:(详细版本请参见阿里巴巴java手册)

1 每个部分之间用空行隔开。

2 要有空格和缩进。

3 所有类名要首字母大写,其它单词首字母也大写。

4 变量名和方法名首字母小写,其它单词首字母大写。

5 包名全小写,不同单词用点或者下划线隔开。

6 常量所有字母都大写,不同单词之间用下划线隔开。XXX_YYY_ZZZ

7 最好望文知意,尽量不要使用中文。

变量就是用于存取数据的,可以进行各种运算。变量本质就是一块内存。

程序必须的硬件是cpu和内存,CPU用于运算,内存用于储存数据。

无盘工作站:只包含CPU和内存。

硬盘和内存的区别:

内存是cpu可以直接访问的存储,因此速度快;但关机后会消失,不能永久保存。(此处不考虑RAM和ROM的问题)

硬盘cpu不能直接访问,需要加载到内存中才能使用,因此速度慢;但关机后可以保存。

数据在内存中以 变量 的形式存储;在硬盘中以 文件 的形式存储。

Java是强类型语言,变量在使用前必须声明。

Java变量使用前必须声明和初始化,声明就是变量第一次出现时,带类型定义。声明只做一次,以后直接使用即可。初始化就是第一次给变量赋值。

变量名必须先是标识符,标识符命名的一些规则:

1 必须是字母、数字、下划线、$等,不能是随意的字符。

2 数字不能是第一个字符。

3 不能是Java关键字,比如:public static class ….

4 不可以使用关键字和保留字,但能包含关键字和保留字。

5 可以是汉字,但是不推荐使用。

6 Java中严格区分大小写,长度无限制。

7 标识符不能包含空格。

标识符可以给类/变量/属性/方法/包 起名字。

JAVA中所有关键字均是小写,小写的不一定都是关键字。

保留关键字:const goto

Java的虚拟机是用C++写的。

extends  继承 ;  final用来定义常量 ;

try catch  finally 的组合用于处理异常 ;

implements 实现接口 和extends组合用于实现继承;

instance of 判断变量类型(多态的内容);interface 接口;

native  本地(调用系统);new 创建对象;

private  protected  public 代表访问权限;

return 方法返回值; strictfp  精确浮点运算;

enum  枚举 ;  transiend  I/O的内容

Java中变量按照数据类型分为基本数据类型和引用数据类型。

基本类型有8种。

整型:byte(8 bit)  short   int(默认类型)   long

浮点型:float double (默认类型)

字符型:char('')

布尔类型: boolean(只能取值为true 或false,不能取null)

补充:按照在类中存在的位置的不同:成员变量 vs 局部变量

引用数据类型是更广泛的,包括所有的:类、接口、数组、枚举和标注。

内存/硬盘的存储单位:

计算机最基本的存储单位,一个二进制位(bit)。

计算机的底层只能存1和0,代表有电和没电。

计算机由很多个二进制位组成。

存储最常用的单位是 字节(byte),8个bit等于1个byte。

文件/内存的大小经常使用 kb / mb / gb / tb ,1k = 1024。也就是2的10次方。

基本类型包括:

整型4种  byte(1字节) / short(2) / int(4) / long(8)

浮点2种  float(4) / double(8)

布尔     boolean(1)

字符     char(2)

byte 的表述范围: -128 到 127 (负的2的7次方到正的2的7次方减1)

int 的表述范围: -2的31次方到2的31次方减1(正负21亿多)

整型默认是int,浮点默认是double。

整型可以用二进制、八进制、十六进制和十进制。其中,十六进制的10用A表示,15用F表示。以0开始的是八进制,以0x开始的是十六进制。

10  -> 10

010  -> 8

0x10  -> 16

二进制和十进制的进制转换:

二进制中,第一位叫符号位,0代表非负数,1代表负数,不参与运算。

正数的二进制转十进制 (以八位二进制为例)

权重:符号  64 32 16  8 4 2 1

0    1  1  1   0 1 0 1 -> 64+32+16+4+1 = 117

练习: 0101 1011 -> 64+16+8+2+1 = 91

正数的十进制转二进制

除2取余数,反向输出。

91    余1

45    余1

22    余0

11    余1

5     余1

2     余0

1     余1

0       0101 1011

57转二进制0011 1001

负数的十进制转二进制    需要先把正数的转换完成,再按位取反后加1(补码)。

十进制转二进制:

-95

95 -> 95-64 = 31-16 = 15-8 =7 -4 =3 -2 = 1

0        1  0   1       1     1     1   1 -> 0101 1111

1010 0000+1 = 1010 0001

-108  -> 0110 1100 -> 1001 0100

二进制转十进制:

先减1,再按位取反可以得到对应的正数。

按位取反后加1(补码)。

1010 0001 -1 = 1010 0000 -> 0101 1111 -> -95

0101 1110 +1 = 0101 1111 -> -95

1100 0011 -> 0011 1101 -> -61

设计一套砝码,要求能称1-100的所有重量,最少几个砝码。(砝码只在天平一边)

二进制表示1-100 所以 64 32 16 8 4 2 1 就可以。

long类型范围比int大,long类型的常数后面加L/l。

浮点类型:(小数)

float和double都是浮点,但Java的浮点都不准,只是一个算法近似值。

float叫单精度浮点,double叫双精度浮点。

0.1+0.2 不等于0.3 但是: 0.1+0.2+0.2 等于0.5 。

系统默认浮点是double,float必须加 f/F。0.3 是double , 0.3f是float。

如果计算比long大的整数或者精确(按多少位)运算,使用BigDecimal类。

字符类型:

字符类型的变量具备两种身份:字符和整数。对外是字符,但存的是整数,就是字符的编码。常见的编码:'A':65  'a':97  '0':48。

'0'  0  "0"不一样,分别是字符0,数字0和字符串0。

字符的表示方式:'a'   '\uXXXX'   97 。

\ 是转义字符,常见的用法:  '\n'换行  '\t'跳一个制表位  '\\'代表一个\

基本类型的类型转换:

1、 自动转换发生在小的表述范围到大的表述范围,即容量小的数据类型自动转换为容量大的数据类型。

布尔类型不参与类型转换。

byte-> short / char -> int -> long -> float -> double

常数可以自动类型转换。

注意:byte  short char之间做运算,结果为int型!

2 、大的向小的转换时,需要强制类型转换,就是(目标类型)

作业:

1 输入圆的半径,输出圆的周长(2*PI*r)和面积(PI*r*r)。

2 输入4位整数,反向输出。比如:输入1234,输出4321。 1230 -> 321。

public class Reverse{

public static void main(String[] args){

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个四位整数");

int num = sc.nextInt(); //1 读入

int a = num%10; //个位数

int b = num/10%10;//十位数

int c = num/100%10;//百位数

int d = num/1000;//千位数   2 取位数

int res = a*1000+b*100+c*10+d;//3 拼装

System.out.println(res);

}

}

你可能感兴趣的:(java程序的基本要素是)