注释注释是对java源代码的解释说明 注释只保存在java源文件中,字节码文件没有注释信息 1 /* 2 这是一个多行注释 3 */ 4 5 //这是一个单行注释 6 7 8 * 9 *javadoc注释10 *javadoc使用,新建一个文件夹,在dos命令窗口下使用javadoc -d 新建文件夹名字 -作者 -版本 (有的信息要提取用-要提取的信息)要提取的Java文件11 *执行完命令后,会在javadoc生成一堆文件,找到index.html用浏览器打开12 *命名要用到@如@author作者,@version版本号13 *14 */ Hello World//class关键字定义类//public是权限修饰符,表示公开的,所有类都可以访问这个类public class Demo1 { //这是程序的入口main方法,必须要有 public static void main(String[] args) { //这是方法体,方法体遵循自上而下依次执行 //这是输出语句,打印hello world System.out.println("hello world"); } } 在一个源文件中可以有多个类,public类不是必须的,但如果有,有且只有一个 public修饰的类的类名必须和源文件名保持一致 标识符什么是标识符 类名、方法名、变量名、常量名、接口名……凡是程序员自己有权命名的都是表示符 标识符命名规则: 1、标识符只能由数字,字母(包括中文),下划线_、美元符号$组成,不能含有其他符号 2、表示符不能以数字开头 3、关键字不能做标识符 4、标识符严格区分大小写 5、标识符理论上没有长度限制 main是一个方法名称,属于标识符,但不可以修改 标识符命名规范 1、见名知意 2、遵循驼峰命名方式,有利于单词与单词之间进行间隔 3、类名和接口名要求:每个单词首字母大写,其余小写 4、变量名和方法名要求:第一个单词首字母小写,其余单词首字母大写 5、所有常量名大写,并且单词与单词之间用下划线衔接 什么是关键字? 关键字是SUN公司开发java语言时,提前定义好的一些具有特殊含义的单词,关键字全部小写 变量什么是变量? 变量是内存当中存储数据的基本单元,java是强类型语言,任何数据都有数据类型,不同的数据类型,在内存中分配的空间大小不同 变量包含哪三要素? 变量的数据类型 变量的名字 变量保存的值 类型决定空间大小,名字便于以后访问,值是变量保存的数据 变量的声明/定义 语法格式:数据类型 变量名 = 值; public class Dem01 { public static void main(String[] args) { int i = 10;//定义变量时赋值 int n;//先定义变量 n = 10;//后赋值 } } java中还可以同时定义多个变量 public class Dem01 { public static void main(String[] args) { int n,i,t; } } 但是无法同时对多个变量进行赋值 变量的作用域 作用域就是变量的有效范围 一个方法就是一个作用域,方法外是同一个作用域 在for循环声明的变量i时,出错了,那是因为在同一个域中变量不能重名,for循环在main方法这个域中,for循环外已经声明了变量i,使用循环里就不能再次声明变量i 在同一个类当中,当成员变量和局部变量重名,使用该重名变量时,用的是谁? 就近原则,用的是局部变量 如果非要使用成员变量怎么办? 如果成员变量是静态变量直接使用类名.即可 如果是实例变量那就先创建对象再使用引用.来调用 变量的分类 根据变量的位置不同可以分为:局部变量(方法体内声明)和成员变量(方法体外声明) 局部变量只有在方法体中有效,方法结束,内存就释放 成员变量又分为实例变量和静态变量 public class Dem01 { public static void main(String[] args) { int c = 10;//局部变量,在同个类中可以直接使用 System.out.println(c); System.out.println(Demo2.a); System.out.println(new Demo2().b); } }class Demo2{ static int a = 5;//静态变量,在其他类中要使用类名.的方式引用 int b = 0;//实例变量,在其他类中需要先创建对象才能通过引用.的方式引用} 数据类型数据类型分为基本数据类型和引用数据类型,除了八种基本数据类型外其他都是引用数据类型 基本数据类型: 整型: byte、short、int、long 浮点型: float、double 布尔型: boolean 字符型: char
计算机存储单位: 1字节 = 8bit 1byte = 8bit 1kb = 1024byte 数据类型的取值范围 byte:[-128~127] short:[-32768~32767] int:[-2147483648~2147483647] char:[0~65535] short和char实际容量相同,但是char可以表示更大的数字,因为char表示文字,文字没有负数,所有char可以表示更大的正数范围 整数型整数型有byte,short,int,long,其中最常用的是int类型 进制 二进制:以0b开头(二进制位最左边是符号位,0表示正数,1表示负数 八进制:以0开头(如01换算成十进制就是1,0123换算成十进制就是83) 十六进制:以0X或者以0x开头(如:0x25换算成十进制是37) 在默认情况下,整数型被当做int类型处理,如果希望这个数据被当做long类型来处理,要在数据后面添加L/l 浮点型浮点型有float和double 浮点型是有限、离散、舍入误差、大约、接近但不等于 所有最后避免使用浮点数进行比较,也不适合进行高精度的运算,如果需要进行高精度运算可以使用BigDecimal数据工具类。 任意一个浮点型都比整型空间大 在默认情况下浮点型会被当做double类型来处理,如果希望这个数据被当做float类型来处理,要在数据后面添加F/f 字符型所有字符的本质还是数字,整数能直接赋值给char类型 当一个整数型赋值给char类型变量时,在没有超过char取值范围的情况下会自动转换成char字符型 类型转换八种数据类型除了boolean不能进行类型转换,其他七种都有可以进行类型转换 类型转换分为: 自动类型转换:小容量的数据类型自动转换为大容量当数据类型,这种转换不需要程序员亲自操作 强制类型转换:当大容量数据类型转换为小容量的数据类型时,不能直接转换需要使用强制类型转换符进行强制转换 使用强制类型转换无论一个数是否超过自身取值范围都能转换,但是会损失精度 这样子虽然没有报错但是如果将t输出会有意想不到的结果 正数变成了负数!!! 为什么会这样!!! 举个栗子:long类型的100转换为int类型的100
所以进行强制类型转换时要注意是否超出取值范围,否则后果自负 整数型运算byte、char、short之间进行混合运算时先各自转换为int在进行计算 byte、char、short、long进行混合运算时会先各自转换为long在计算 转义字符java中转义字符是反斜杠(\) 反斜杠(\)后面的字符会进行转义,如果遇到无法转义的字符则会报错 常见的转义字符 \n:换行符 \t:tab制表符 \":普通的双引号(当想要输出双引号时可以使用这个) \':普通的单引号(当想要输出单引号时可以使用这个) \\:普通的反斜杠(想要输出反斜杠时可以用) \u:表示一个字符 |
|