Java学习笔记(一)

从今天开始学习《Java从入门到精通(第四版)》。

第一章初识Java

看完后大概了解了什么是Java语言,Java的引用领域,Java的特性,以及如何在电脑中安装Java开发环境。我使用的是苹果电脑进行学习。

查看Java版本:

1
2
3
4
$ java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

书中讲了如何在Windows环境下搭建Java环境,没有动手实践过,等用到的时候再翻开书研究一下。

第二章熟悉Eclipse开发工具

本章内容介绍了Java开发工具,我在网上找到了新的开发工具也是免费的。

“工欲善其事,必先利其器”。使用上面的开发工具同样也能完成Java的学习。

第三章Java语言基础

开始正式学习Java编程。
首先使用IntelliJ IDEA新建一个工程。

然后输出“Hello world!”。
新建一个Java类,输入下面的代码:

1
2
3
4
5
6
7
8
9
10
package cn.ccyit.javanote;

public class First {
static String s1 = "你好";
public static void main(String[] args) {
String s2 = "Java";
System.out.println(s1);
System.out.println(s2);
}
}

注意:标点符号都是英文字符,文件名必须和类名同名。Java是区分大小写的。

使用IDE进行编码,当出现错误时,能及时发现并改正。代码第一行是包声明,具体内容在11章。s1是成员变量,s2是局部变量。main()方法是程序开始执行的位置。JavaAPI文档是程序员必要的工具。

可以通过import导入相关的类。

Java基本数据类型

基本数据类型包括数值型,字符型,布尔型。
整数类型和浮点类型构成了数值型。
整数类型包括:byte,short,int,long。
浮点类型包括:float,double。

不同数据类型的取值范围不同,应根据需要选择合适的类型。超出相应的范围就会出错。浮点类型默认是double类型。

字符类型

字符类型占两个字节的内存空间。(0x0000-0xffff)一共可以存储65536个字符。转义字符以‘\’开头。

boolean类型,只有true和false两个值,真和假。通常作为判断条件,不能与整数类型进行转换。

变量与常量

标识符

标识符可以作为类名,变量名,方法名,文件名等。规定标识符由数字,字母,下划线(_),美元符号($)等组成,数字不能是第一个字符。Java使用Unicode字符集,所以字母包括中文以及其他语言的文字。也就是说标识符可以包含汉字。

关键字

Java关键字有50多个。这些关键字不需要死记硬背。在以后的学习中会慢慢遇到的。

变量

变量由三部分组成:变量的数据类型,变量名,变量的值。
比如:

1
2
int age;
char char1 = '陈';

没有值的变量对于程序来说是没有用的,浪费内存空间。
本书建议不要用汉字作为变量名。如果使用大家都使用汉字编程,那时我也会用的。

常量

在变量前加final关键字,就成了常量。一般用大写字母表示。定义时就设置初始值,以后就不能再改了。
比如:

1
final double π=3.1415926D;

变量的有效范围

变量的作用域,变量一般分为成员变量和局部变量。成员变量又可分为实例变量和静态变量。静态变量也叫做类变量。

运算符

自增,自减运算符。“++”,“–” 。它们是单目运算符,可以放在操作数前面,也可以放在操作数后面。使用时需要特别注意。个人觉得应尽量少使用它们。位运算符是针对位方面的操作。数据在内存中以二进制的形式表示,0或者1。移位可以实现乘2或除2的效果。三目运算符是if…else的等价形式。运算符优先级,比如先算乘除再算加减,有括号的先算小括号里面的。如果记不清优先级,使用括号来限定运算次序。

数据类型转换

隐式类型转换

从低级类型向高级类型的转换系统将自动进行。按照由低到高的排列顺序为:byte < short < int < long < float < double.

显示类型转换

又称为强制类型转换,语法如下:
(类型名)要转换的值
当执行显示类型转换时可能会导致精度损失。

编码注释与编码规范

单行注释,多行注释与文档注释。对于初学者而言,文档注释了解即可

单行注释

//为单行注释标记,
比如:

1
2
3
//注释内容
int age; //定义int型变量用于保存年龄信息

多行注释

/* */为多行注释标记,多行注释可以嵌套单行注释,但不可以嵌套多行注释。

文档注释

/** */为文档注释镖局,文档注释出现在声明之前时,会被Javadoc工具读取作为doc文档内容。

一般的,注释要占程序代码总量的20%~50%,阅读没有注释的代码是一件很费时的事情,尤其在原作者已经离职的时候。

编码规范

对于初学者而言,编码规范并不重要。慢慢的,你会养成自己的编码习惯。