java从小白到工程师--基础篇(二)
2017-12-02 12:48
260 查看
本期作业:将你的姓氏的Unicode码用程序显示出来。
上一章节中我们配置了环境变量,编写了第一个java程序“hello,world”(java从小白到工程师--基础篇(一) ),今天我们继续学习基础知识。本系列面对纯小白,故添加了一些常识性的知识点。
计算机常用快捷键:
ctrl+c 复制
ctrl+v 粘贴
ctrl+A 全选
ctrl+S 保存
ctrl+z 撤回
ctrl+Y 前进
Alt+Tab 切换任务
ctrl+D 删除整行(eclipse才能用)
ctrl+Alt+Del或者ctrl+Shift+Esc 任务管理器
使用工具eclipse开发时,我们会经常使用到注释功能,注释就是对代码进行解释,或者进行标记(eclipse下载地址)。常用的注释有三种:
1、单行注释
2、多行注释
3、doc注释
注释的内容只会在源码中可见,并不会像上节课我们写的内容那样被编译。注释在eclipse中的使用方法如下:
注释:
单行注释: //
快捷键:ctrl+/
单行或多行注释: /* 注释的内容 */快捷键:多行注释ctrl+shift+/
doc注释 /** 可用于文档化处理的单行或多行注释 */快捷键:alt+shift+j
@author 对类的说明
标明开发该类模块的作者
@version 对类的说明
标明该类模块的版本
@param 对方法的说明
对方法中某参数的说明
@return 对方法的说明对方法返回值的说明
@exception 对方法的说明对方法可能抛出的异常进行说明
@Time 对时间说明
需要说明的是,doc注释的内容是可以自定义的,这里只列举了几个。
java的分隔符及分隔符的作用(注意!必须全是英文符号):
Java分隔符组成:
分号-";" 逗号-","
空格-" ", 圆点-".", 花括号-"{"及"}"
Java分隔符作用:
Java语句必须以分号作为结束标记,for循环语句中使用分号来分隔不同的成份。
逗号可以在方法声明或调用时的参数列表中用于分隔多个参数,也可在一条声明语句中同时声明多个属性或局部变量时起分隔作用。
Java程序源代码中各组成部分之间可以插入任意数量的空格,包括换行。
圆点用于访问对象成员(属性或方法)时标明调用或隶属关系,其格式为"对象名.对象成员"。
花括号用于构造语句块(现在看不懂的没关系,以后会讲到,先不用纠结)。
前阵子有一对家长给小孩取了一个四个字的名字,被拒绝上户口,因为孩子必须随父亲姓或者母亲姓。同样的道理,在java中也有一些命名规则:
Java标识符的命名规则:
应以字母、下划线(_)、美元符($)开头,后跟字母、下划线、美元符或数字,Java标识符大小写敏感,长度无限制
下面做了一个简单是示范:
说到取名字,还有很多事。比如孩子取名毛*东,江*民那肯定是不行的。在古代也有避讳一说。比如明朝的猪不叫猪,叫“豕”。在java中也有一些特殊意义的字符是不可以占用的,那这些词就是关键词:
Java语言中一些被赋以特定的含义、并用做专门用途的单词称为关键字(Keyword)。
所有Java关键字都是小写的,TURE、FALSE、NULL等都不是Java关键字 。
因为java是继承了c的衣钵,所以goto和const 也收录了但是从未使用,但依然被作为Java关键字保留。
true,false虽被用做专门用途,但不是Java关键字。
Java关键字表
以上 表格中的关键字现在暂时不用背,因为我们会一个个地接触到(其中有些已经在上节课接触过)。现在作为了解即可。
java中的数据类型非常严格,所以基础课程中相当重要的一个任务就是必须熟练记忆java的数据结构。数据类型分为八种基本数据类型和引用数据类型。本节课的重点内容是基本数据类型。
下面的数据结构的一个结构图
基本数据类型:
基本类型(Primitive Type)的数据只能保存单一的值,因此也被称为原始类型、或简单类型。
Java中定义了四类/八种基本数据类型:
逻辑型 -- boolean
文本型 -- char
整数型 -- byte, short, int, long
浮点型 -- float, double
朗读并背诵全表
下面将进入本节内容的难点,数据类型的转换:
1.程序中经常遇到要将数据类型进行转换的情况 (如:在一个表达式中存在不同类型的操作数时), Java的数据类型转换比C控制得更为严格
2.数据类型转换的两种情况:
1、自动类型转换
2、强制类型转换
1.自动类型转换也称作隐式类型转换;
2.将一种类型的变量赋值给另一种类型的变量时,只需要满足一下条件就会发生自动类型转换:
1、两种类型相互兼容
2、目标类型大于源类型(参考上表,类型提升)
可在安装好的eclipse中file-new-project-java project-next,取名,finish-展开项目,在src下右击new package,取个任意的名字,再在该包下右击新建一个class,命名时首字母大写,然后再敲上上节课的内容,如图所示:
目录结构如下所示:
你可以到工作目录下查看,其实就是一个个文件夹。
然后可以在main方法的花括号内写下以下测试内容,增加感受。
char ch = 'a' ;(char只能是单个字符)
int num = ch ;
float f = num ;
double d = f ;
//类型转换自动发生,无需显式说明
我们可以看到,程序并没有显示有任何异常或者错误,说明例子中的几种类型是可以相互兼容及转换的。
类型提升的规则如下:
1.有类型提升的情况下,编译器将自动进行类型转换,否则就要进行强制类型转换;
2.类型提升应遵循如下规则:
1、两种类型必须兼容,且目标类型大于源类型,例如:
byte、char、short都可以提升为int型。
2、对于表达式而言,其最终结果将会与表达式中最高的数据类型相同
强制类型转换:
1.强制类型转换也称作显式类型转换;
2.如果被转换的值的数据类型大于其目标类型,将会失去部分信息;
eg:
int x = 65;
char ch = x;
这样的语句将报错,因为char类型精度低于int类型,编译器无法将其自动转换,只能进行强制转换。
int x = 65;
char ch = (char)x;
相当于别人问你月薪多少,你说不到三万,没有任何问题,问具体是多少,你说1200,这里就发生了数据精度的变化,可以结合两个例子感受一下。我们在工具中依然写下上面的案例,看一下效果:
可以清楚地看到此时编译器给了一个错误提示,鼠标放到红线上可以看到出错的内容以及修正方法;
加上一个(char),就不再报错了。此时的黄线表示一个警告,提示我们定义的变量并没有使用,暂时可以不用管。
补充:
转义字符:
\" 双引号
\' 单引号
\t 制表符
\n 换行符
\r 回车(一般两个连用)
好了,可以做作业了
ps:未经博主许可,请勿转载
上一章节中我们配置了环境变量,编写了第一个java程序“hello,world”(java从小白到工程师--基础篇(一) ),今天我们继续学习基础知识。本系列面对纯小白,故添加了一些常识性的知识点。
计算机常用快捷键:
ctrl+c 复制
ctrl+v 粘贴
ctrl+A 全选
ctrl+S 保存
ctrl+z 撤回
ctrl+Y 前进
Alt+Tab 切换任务
ctrl+D 删除整行(eclipse才能用)
ctrl+Alt+Del或者ctrl+Shift+Esc 任务管理器
使用工具eclipse开发时,我们会经常使用到注释功能,注释就是对代码进行解释,或者进行标记(eclipse下载地址)。常用的注释有三种:
1、单行注释
2、多行注释
3、doc注释
注释的内容只会在源码中可见,并不会像上节课我们写的内容那样被编译。注释在eclipse中的使用方法如下:
注释:
单行注释: //
快捷键:ctrl+/
单行或多行注释: /* 注释的内容 */快捷键:多行注释ctrl+shift+/
doc注释 /** 可用于文档化处理的单行或多行注释 */快捷键:alt+shift+j
@author 对类的说明
标明开发该类模块的作者
@version 对类的说明
标明该类模块的版本
@param 对方法的说明
对方法中某参数的说明
@return 对方法的说明对方法返回值的说明
@exception 对方法的说明对方法可能抛出的异常进行说明
@Time 对时间说明
需要说明的是,doc注释的内容是可以自定义的,这里只列举了几个。
java的分隔符及分隔符的作用(注意!必须全是英文符号):
Java分隔符组成:
分号-";" 逗号-","
空格-" ", 圆点-".", 花括号-"{"及"}"
Java分隔符作用:
Java语句必须以分号作为结束标记,for循环语句中使用分号来分隔不同的成份。
逗号可以在方法声明或调用时的参数列表中用于分隔多个参数,也可在一条声明语句中同时声明多个属性或局部变量时起分隔作用。
Java程序源代码中各组成部分之间可以插入任意数量的空格,包括换行。
圆点用于访问对象成员(属性或方法)时标明调用或隶属关系,其格式为"对象名.对象成员"。
花括号用于构造语句块(现在看不懂的没关系,以后会讲到,先不用纠结)。
前阵子有一对家长给小孩取了一个四个字的名字,被拒绝上户口,因为孩子必须随父亲姓或者母亲姓。同样的道理,在java中也有一些命名规则:
Java标识符的命名规则:
应以字母、下划线(_)、美元符($)开头,后跟字母、下划线、美元符或数字,Java标识符大小写敏感,长度无限制
下面做了一个简单是示范:
合法的标识符 | 不合法的标识符 |
HelloWorld | class |
DataClass | DataClass# |
_983 | 98.3 |
$bS5_c7 | Hell World |
Java语言中一些被赋以特定的含义、并用做专门用途的单词称为关键字(Keyword)。
所有Java关键字都是小写的,TURE、FALSE、NULL等都不是Java关键字 。
因为java是继承了c的衣钵,所以goto和const 也收录了但是从未使用,但依然被作为Java关键字保留。
true,false虽被用做专门用途,但不是Java关键字。
Java关键字表
abstract | assert | boolean | break | byte |
case | catch | char | class | const |
continue | default | do | double | else |
extends | final | finally | float | for |
goto | if | implements | import | instanceof |
int | interface | long | native | new |
null | package | private | protected | public |
return | short | static | strictfp | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
java中的数据类型非常严格,所以基础课程中相当重要的一个任务就是必须熟练记忆java的数据结构。数据类型分为八种基本数据类型和引用数据类型。本节课的重点内容是基本数据类型。
下面的数据结构的一个结构图
基本数据类型:
基本类型(Primitive Type)的数据只能保存单一的值,因此也被称为原始类型、或简单类型。
Java中定义了四类/八种基本数据类型:
逻辑型 -- boolean
文本型 -- char
整数型 -- byte, short, int, long
浮点型 -- float, double
朗读并背诵全表
数据类型 | 位数 | 字节 | 取值范围 |
byte | 8 | 1 | -128~127 |
short | 16 | 2 | -32768~32767 |
int | 32 | 4 | -2^31~2^31-1 |
long | 64 | 8 | -2^63~2^63-1(L) |
float | 32 | 4 | float类型有后缀F |
double | 64 | 8 | 略 |
char | 16 | 2 | '\u0000'~'\uFFFF'(Unicode码) |
bolean | 1 | 1 | true /false |
1.程序中经常遇到要将数据类型进行转换的情况 (如:在一个表达式中存在不同类型的操作数时), Java的数据类型转换比C控制得更为严格
2.数据类型转换的两种情况:
1、自动类型转换
2、强制类型转换
1.自动类型转换也称作隐式类型转换;
2.将一种类型的变量赋值给另一种类型的变量时,只需要满足一下条件就会发生自动类型转换:
1、两种类型相互兼容
2、目标类型大于源类型(参考上表,类型提升)
可在安装好的eclipse中file-new-project-java project-next,取名,finish-展开项目,在src下右击new package,取个任意的名字,再在该包下右击新建一个class,命名时首字母大写,然后再敲上上节课的内容,如图所示:
目录结构如下所示:
你可以到工作目录下查看,其实就是一个个文件夹。
然后可以在main方法的花括号内写下以下测试内容,增加感受。
char ch = 'a' ;(char只能是单个字符)
int num = ch ;
float f = num ;
double d = f ;
//类型转换自动发生,无需显式说明
我们可以看到,程序并没有显示有任何异常或者错误,说明例子中的几种类型是可以相互兼容及转换的。
类型提升的规则如下:
1.有类型提升的情况下,编译器将自动进行类型转换,否则就要进行强制类型转换;
2.类型提升应遵循如下规则:
1、两种类型必须兼容,且目标类型大于源类型,例如:
byte、char、short都可以提升为int型。
2、对于表达式而言,其最终结果将会与表达式中最高的数据类型相同
强制类型转换:
1.强制类型转换也称作显式类型转换;
2.如果被转换的值的数据类型大于其目标类型,将会失去部分信息;
eg:
int x = 65;
char ch = x;
这样的语句将报错,因为char类型精度低于int类型,编译器无法将其自动转换,只能进行强制转换。
int x = 65;
char ch = (char)x;
相当于别人问你月薪多少,你说不到三万,没有任何问题,问具体是多少,你说1200,这里就发生了数据精度的变化,可以结合两个例子感受一下。我们在工具中依然写下上面的案例,看一下效果:
可以清楚地看到此时编译器给了一个错误提示,鼠标放到红线上可以看到出错的内容以及修正方法;
加上一个(char),就不再报错了。此时的黄线表示一个警告,提示我们定义的变量并没有使用,暂时可以不用管。
补充:
转义字符:
\" 双引号
\' 单引号
\t 制表符
\n 换行符
\r 回车(一般两个连用)
好了,可以做作业了
ps:未经博主许可,请勿转载
相关文章推荐
- 2015携程JAVA工程师笔试题(基础却又没多少人做对的面向对象面试题)
- 【小白的java成长系列】——Java基础知识
- Java开发工程师面试基础点(整理)
- 0基础小白怎么学好Java?
- java工程师基础知识面试
- Java零基础到开发工程师之番外篇--html入门
- 蓝桥杯-基础练习《字母图形》Java 小白向
- 【Java工程师之路】[2-1.0]数据库基础
- Linux运维系统工程师与java基础学习系列-7
- 2015携程JAVA工程师笔试题(基础却又没多少人做对的面向对象面试题)
- JAVA高级工程师课程笔记整理——(二)JAVA基础
- 大数据工程师:大数据的java基础 第六周
- JAVA工程师成神之路--基础篇(三)JAVA内存管理
- 进击的Android工程师之Java基础: 反射
- 零基础小白JAVA学习笔记(七)
- Linux运维系统工程师与java基础学习系列-3
- 学Java需要什么基础?芯学苑零基础学Java四个半月成Java工程师
- 大数据工程师:大数据的java基础 第八周
- 大数据工程师:大数据的java基础 第一周