关闭

Java语言基础

606人阅读 评论(0) 收藏 举报

Java语言基础

在编写Java语言时,该空格时就空格。

标识符不能用数字、也不能用汉字和java关键字。例如(abstract:修饰符,生命抽象方法和抽象类。)多行注释中不能加多行注释,可以加单行注释。。

javadoc只能提取公共和受保护的类,生成软件说明文档。(/**..........*/)

-d是生成路径

数据类型作用:数据类型定义了数据的性质、取值范围、存储方式以及对数据所能进行的运算和操作。

浮点常量:1.23e-5是double类型;1.23f是浮点型。

变量:对应的就是内层的一个区域,保存在这一区域内。

内容:

1、分隔符、标识符以及关键字

   分号;语句的结束标记。逗号,花括号{ }

、空格和圆点。

        2、标识符(identifier) :起到标识作用的符号。

标识符的命名规则

标识符必须以字符、下划线(“_”)或美元符(“$”)开头,后跟字符、下划线、美元符或数字(0~9)。

长度无限制。

     必须注意:

Java标识符的拼写是大小写敏感的,即区分大小写, a和A是两个完全不同的标识符。

不允许Java关键字(参见下一节)做标识符。

3、关键字(Keyword)

Java语言将一些特定的单词(或字符序列)保留做专门用途,这些单词或字符序列被称为关键字(Keyword)或保留字(Reserved Word)。

 

必须注意

Goto和const虽未起任何作用,但为避免无用也被作为关键字保留下来;

True和false虽不是关键字,但也已被用作专门用途,因此不可做标识符使用;

Java关键字都是小写。

4、注释:注释是对源程序起解释说明作用的文本信息,适当的使用注释可以增强程序代码的可读性和可维护性。

注释的格式

以//开头,注释内容从//开始到本行行尾结束; 

以/*开头,直到遇到*/结束,注释内容可以跨行,适用于内容较长的注释;

以/**开头,直到遇到*/结束,注释内容可以跨行。使用JDK中提供的文档化工具javadoc可以将这种注释的内容提取出来自动生成软件说明文档 。

数据类型

数据类型的分类

       将数据按数据性质进行分类,每一类称为一种数据类型(datatype)。数据类型定义了数据的性质、取值范围、存储方式以及对数据所能进行的运算和操作。

这里涉及到java数据类型:

java数据类型包括:基本数据类型和引用数据类型。

其中基本数据类型有数值型、布尔型(boolean)和字符型(char)。数值型又包括整型(byte、short、int、long)和浮点型(float、double)。

基本数据类型

     基本数据类型是Java语言中预定义的、长度固定的、不能再分的类型,数据类型的名字被当作关键字保留,并且都是小写的。 

 类型名称 关键字 所占字节 取值范围 默认值

数 字节型 byte 1 -27~27-1  (byte)0
短整型 short 2 -215~215-1 (short)0
整型 int 4 -231~231-1 0
长整型 long 8 -263~263-1 0

数 单精度浮点数 float 4 -3.4E38~3.4E38 0.0
双精度浮点数 double 8 -1.7E308~1.7E308 0.0
字符型 char 2 0~65535 ‘\u0000’
布尔型 boolean 1 true和false false

注意:

Java语言在使用浮点型数据时默认的类型是double类型。如果要指定为float或double型常量可以在常量后面加上f或d,如单精度浮点常量2.456f、1.6e-2f,双精度浮点常量-0.58934d。

布尔类型常量仅有两个值,即true和false,分别代表布尔逻辑中的“真”和“假”。在Java语言中,布尔类型常量不能喝其他任何类型转换,true不等于1,而false也不等于0。

字符型常量是非常常见的一种数据类型。在许多程序设计语言中,字符是用8位数据表示的,也就是通常所说的ASCII码,但在Java中字符数据类型char是用16位表示的。这种编码方法被称为Unicode,Unicode所定义的国际化字符集能表示迄今为止人类语言的所有字符集。

常量:

整型常量 12  -98245 0122 0x4f 5649L
浮点常量 1.23  1.23E-5  1.23e+2  1.23f   1.23e+3f
布尔型常量 true  false
字符型常量 ' a'   '汉'   '\n '   ' \141 '    ' \u234f '
字符串常量 “this is a string!\n”

数据类型中的常量和变量

“\u234f”(Unicode 字符)

字符串常量(引用数据类型,但可以像使用基本数据类型一样来使用它。)

变量:

变量的声明:<类型> <变量名>(必须是合法的标识符 ) [=<初值>][,<变量名>[=<初值>]…]([]表示可选项 ); int a,b;    float var=1.2f;   char c1,c2=‘a’;

变量的作用域变量的作用域也称变量的作用范围,即一个变量在多大的范围内可以使用。   类中声明的变量  方法中声明的变量   复合语句中声明的变量

必须注意:方法体或复合语句中定义的局部变量必须初始化(赋值)后才能使用,而类中的成员变量可自动初始化为默认值。

例:变量声明和其作用范围。

class TestDefinition{

Static String str = "Hello\t";//str在该类的各个成员方法中均有效

public static void main(String[] args){

String stringVar = "Java";//StringVar在该方法中有效

System.out.println(str + stringVar);

Show();

}

static void show(){

String stringVar = "中国";//stringVar在该方法中有效

System.out.println(str + stringVar);

}

}

说明:

由于main()方法是静态方法(用static修饰),只能处理TestDefinition类中的静态成员变量和调用类中的静态方法,因此在程序中必须将str和show()定义为静态的,否则会产生编译错误。Str是TestDefinition类中的成员变量,它在类的范围中有效,因此应用程序的main()方法和show()方法都能访问它。

编码惯例:

编码惯例是指开发人员在编码过程中应遵循的约定,或者说是初学者应努力养成的编码习惯。编码惯例虽不是强制性的,但对于软件开发工作的影响非常大。

  命名惯例

      给Java类、方法、变量等以标识符命名时最好能体现其含义,且应简单明了、风格一致 。

项目 命名规则 说明/举例
类 名词或名词性词组,每个单词首字母大写;一般不使用缩写,除非其缩写更通用和便于理解,如HTML。 class Person;
class SprintRain;
方法 动词或动词性词组,首字母小写,第二个及以后的单词首字母大写。 run();
displayInfo();
接口 同“类”的命名规则。 interface Runner;
变量 名词或名词性词组,首字母小写,第二个及以后的单词首字母大写;不提倡使用下划线“_”和美元符“$”作为变量开头;单词间可以使用下划线分隔;变量名不宜过长但也应有意义,除非是临时使用(例如只涉及几行代码)后即丢弃的情况,不建议使用单个字母做变量名,常用的单字母变量名包括表示整数的i、j、k、m、n和表示字母的c以及表示异常对象的e等。 int i;
char c;
double salary;
int age;
int student_age;
String studentName;
Exception e;
常量 名词或名词性词组,全部大写;单词间使用下划线分隔。 final int MAX_LEVEL=10;
包 名词或名词性词组,全部小写;一般使用本公司/组织网站域名的逆序、后跟具体的软件内部模块名 package com.sun.java;
package com.mycompay.db;

文件的组织

      建议一个源文件中只定义一个Java类或接口,无论该类或接口是否被声明为public的,文件名都以类名来命名。源文件中各成分的出现顺序为:

       开始的注释、package语句、import语句、类/接口声明

      在一个Java类中,各种成分的排列本无严格规定,也没有特别通用的惯例,为便于初学者掌握,这里也给出一个推荐的顺序:

      属性声明、构造方法声明、static语句、普通方法声明、main方法声明、内部类的声明

分隔与缩进

      好的分隔包括换行和缩进,能够保证程序层次清晰,以增强可读性。主要是使用空格符、制表符、换行符及小括号。

 声明语句

      建议每行声明一个变量,并尽量在声明的同时对其进行初始化,除非其初值尚不确定。局部变量应在其所在的方法或语句的开头集中声明。也应避免将变量不必要的声明在外层范围中,否则会影响代码的可读性。

 

代码应永远力求简洁。

与不提倡用一条语句声明多个变量类似,也不提倡在一条语句中同时给多个变量赋值。同时,应尽可能避免使用“对象名.成员”的方法访问一个类的static成员,而应采用“类名.成员”的方法。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:377300次
    • 积分:3967
    • 等级:
    • 排名:第7890名
    • 原创:97篇
    • 转载:2篇
    • 译文:0篇
    • 评论:140条
    文章分类
    最新评论