Java自学第2课:Java语言基础知识要点

1 Java主类结构

任务:创建新项目名为item,包名为number,类名为first。

1.1 包声明

不指定包时,默认就是工程名,指定后,类文件可以分类了,是这意思吧。包就大概等于一个文件夹。而且在类文件中,有个package声明。这就是包声明。

1.2 成员变量和局部变量

类的属性就是成员变量,方法中的属性就是局部变量,这个好理解。

1.3 主方法

main就是类的主方法。是开始执行程序的位置。这个和c++有很大不同。

有个疑问,如果我有多个类,那么每个类都有main函数?

1.4 导入API类库

可以通过import来导入相关类,这个和python类似。这类不展开,只了解。

2 基本数据类型

和其他编程语言是类似的。

要注意,整数型不同字节数的类型取值范围是不一样的,这个注意一下。

不知道现在的程序员们喜欢用哪个类型。

浮点型,如果指明类型,就需要在数字后面加上f和d来表示float和double。

字符型:

char用来表示单个字符,比如's',和c语言是一样的。

char中转义字符有用,比如

3 变量与常量

3.1 标识符和关键字

标识符就是用来表示类,变量,方法,数组,文件等,合法的标识符是任意顺序字母,下划线,美元符号和数字组成,第1个字符不能是数字。标识符不能是关键字。

和c不一样的关键字还是有几个的,注意下就行。

所有的变量使用前都必须声明。

3.2 常量

声明常量:使用final关键字。如:

final double pi = 3.14;

当常量是成员变量时,定义时必须给初值。

3.3 变量的有效范围

变量根据有效范围可分为:成员变量和局部变量。

(1)成员变量可分为静态变量和实例变量。

(2)局部变量名字与成员变量相同时,成员变量将在此方法中隐藏失效。

3.4 运算符

  • 赋值运算符=
  • 算术运算符+-*/%
  • 自增自减运算符++ --
  • 比较运算符> < == >= <= !=
  • 逻辑运算符 && & || !
  • 位运算符 & | ~ ^ << >> >>>
  • 三元运算符 a>b?a:b

其中 移位运算符没怎么见过。此外,要注意运算符的优先级。

3.5 数据类型转换

包括隐式转换和显式转换。

隐式转换优先级为:这时候不需要操作就转换了

最好别隐式转换,容易出错。

显式转换是最好的方式。书上有个例子有点意思:

不知道这时候b会如何显示?

3.6 代码注释和编码规范

注释方法和C一样。注意一下文档注释/** */

编码规范还是值得学习一下的。

4 小练习

前面提到的那个显式转换的问题,试一下。

可见,b变成了-127,还在范围之内(-128~127)。

相关推荐
野生技术架构师10 分钟前
1000+ Java面试题知识图谱:从基础语法到分布式架构的完整拓扑
java·面试
步行cgn10 分钟前
Spring 底层如何创建对象:反射机制与实例化策略
java·后端·spring
郝学胜-神的一滴12 分钟前
Effective Python 条款 13:善用星号解包,告别下标切片拆分的坑
服务器·开发语言·数据结构·python·程序人生·pycharm
一水鉴天14 分钟前
词、术语、概念:从特征集收束到统一拓扑变换的升格与降格模型 20260915(豆包)
开发语言·人工智能
何以解忧,唯有..35 分钟前
Redis 过期事件监听:原理与实战
java
weixin_3077791343 分钟前
C++代码实现MATLAB中的ode45函数功能
开发语言·c++·算法·matlab
风中的小熊生气1 小时前
Spring Boot 面试知识(二):分层、IoC、异常、配置与 Redis
java·springboot
泡茶喝茶写代码1 小时前
量化数据开发实战系列(第 25 篇):基金基础接口实战:基金列表、ETF-LOF 分类、基金概况、净值数据
java·数据库·人工智能·python·mysql
是立不是利1 小时前
大文件导致请求被拒的连锁反应
开发语言·前端·javascript