Java SE 学习笔记 第一记

来源:互联网 发布:汉语言文学学什么知乎 编辑:程序博客网 时间:2024/06/04 19:25

2012-07-12

1、bin目录:binary二进制缩写

2、windows环境变量:用户变量只对当前用户起作用,系统变量对所有用户都起作用。

3、javac的c是compile缩写,编译的意思,所以javac是编译命令程序。

4、java.exe是java运行字节码class命令程序。

5、java编译后的class文件名为java源文件的类名,并非java源文件名。

6、java是跨平台语言在于真正执行的不是二进制代码而是字节码,并且字节码由JVM执行,也就是说java程序可以不考虑程序将在什么操作系统上运行,因为运行java程序是的JVM虚拟机,只要有虚拟机就可以执行java程序。但是JVM虚拟机不是跨平台的,它是由c语言编写的,不同平台下的JVM虚拟机不一样。

7、java包含8中原生数据类型:整型int(32位)、字节型byte(范围-128-127,是整型的一个子集)、短整型short(16位)、长整型long(64位)、单精度浮点型float、双精度浮点型double、字符型char、布尔型boolean(true&false)。

8、java变量名可以包含下划线、字母、美元符号、数字,但是变量名不能以数字开头。

9、java中有三种注释方式:单行注释,//;多行注释,/* */;java doc帮助文档注释,/** */。

10、java中的布尔型只允许true和false两个值,不同于c语言和C++可以将数值当做布尔型。

11、java中所有浮点型默认情况下都是double类型,所以将任意一个浮点值赋给float变量将会抛出损失精度错误,所以将浮点值赋给float需要将浮点值强制转换为float(加括号和类型名),或者借助java语言的支持性在浮点值后加F(大写或小写),如:float a=1.2F。

12、赋值准则:赋值等号左右两边类型一致或者左边类型范围大于右边类型范围,并且值大小不溢出该类型。

13、变量在使用之前必须声明类型和赋值,并且只能声明定义一次。

————————————————————————————————————————

2012-07-13

1、若干个数据类型参与运算,运算结果类型为参与运算类型中表值范围最大的类型。

2、当运算结果为int时,java舍弃结果的所有小数部分,只保留整数部分。

3、强制转换,如a为int,“(double)a”整个部分的结果为double类型,但是a本身还是int类型。

4、取模运算(%)的结果正负与被除数的符号一致。

5、逻辑运算与&&:当左边的值为false时,java得出结果为false,不再执行&&右边的表达式。

6、逻辑运算或||:当左边的值为true时,java得出结果为true,不再运行右边的表达式。

7、条件运算符(三目运算符):type d=布尔表达式?a:b

8、switch的变量类型只允许short、byte、int、char四种类型和枚举类型。

9、继承 inheritance;封装encapsulation;多态polymoruphism

10、定义类:修饰符 class 类名字

11、定义方法:修饰符 返回类型 方法名称(参数)

12、java类中的方法不能嵌套定义,也就是不能在一个方法中定义另一个方法,并且java中的方法只能定义在类中,即方法是属于类的。

13、类的命名约定:首字母大写,如果由多个单词组成则每个单词首字母都大写并且直接拼接在一起形成类名。
14、方法的命名约定:首字母小写,如果由多个单词组成则第一单词首字母小写,其余单词首字母都大写,然后直接拼接在一起。
15、属性的命名约定:命名约定与方法的命名约定方式相同。

16、成员变量和局部变量在使用前都需要定义,成员变量在使用前可以不初始化,但是局部变量在使用前必须初始化,否则程序出错。成员变量使用前未初始化,则会使用java默认值:byte、short、int、long默认值为0;boolean默认值为false;float、double默认值为0.0;char默认值为'\u0000'。

17、引用类型是专门使用在对象上的,相当于一个指向对象的指针变量。一个对象可以被多个引用变量引用,但是同一个时刻一个引用变量只能引用一个对象。

18、用new实例化一个类创建对象的实质是在内存类堆上开辟一块空间创新对象,此时若有引用类型赋值,则会返回对象地址给引用类型(引用类型存在于内存栈中)。

19、方法的参数是对象,实际上是对象的引用类型,因为java中对对象的操作都是通过引用类型来实现,所以当实参(引用类型)传递给形参的值实际上只是对象的引用变量,并没有生成一个新的对象,也就是说,此时实参和形参两个引用类型都指向同一个对象。

20、同一个类的多个对象都拥有自己的属性,但是同一个类的多个对象共同拥有类的方法。

21、方法参数为原生数据类型,则参数传递的是值,方法中形参值的改变不影响实参的值。方法参数参数传递都是值传递,引用类型传递的是引用类型值,即地址。

22、什么类型的引用只能指向什么类型的对象或者对象的父类。

23、构造方法的名字必须与类名完全一致,因此构造方法以大写字母开头;构造方法没有返回值,因此构造方法没有返回类型,连void也不能出现;如果没有定义构造方法,类会自动添加默认不带任何参数且方法体为空的构造方法,如果定义了构造方法,则不会自动生成默认构造方法;类的构造方法不能显示调用,由new隐式调用。

24、new关键字生成对象时完成三件事:为对象在内存堆内开辟内存空间;调用类的构造方法;返回对象的地址。new关键字后类名小括号内容为响应构造方法的参数列表。

————————————————————————————————————————

2012-07-14

1、一个java源文件中最多只有一个public类。且main存在的话,只能存在于这个public类中。换句话说,一个java源文件中可以存在多个不是public的类。

2.一个java源文件中含有多少个类,编译后就生成多少个class文件,并且文件名为相应类名。

3、方法重载:两个多或多个方法的名字相同,参数列表不同,包括参数个数不同和参数类型不同。不能根据方法的返回值类型来重载方法,即不能有参数列表相同,唯独返回类型不同的方法重载。