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)。

相关推荐
西阳未落2 小时前
C语言中的内存函数(memcpy, memmove, memcmp, memset)
c语言·开发语言
卓码软件测评3 小时前
第三方软件测试机构【性能测试工具用LoadRunner还是JMeter?】
java·功能测试·测试工具·jmeter·性能优化
axban4 小时前
QT M/V架构开发实战:QFileSystemModel介绍
开发语言·qt·架构
钢门狂鸭6 小时前
关于rust的crates.io
开发语言·后端·rust
Lionel_SSL7 小时前
《深入理解Java虚拟机》第三章读书笔记:垃圾回收机制与内存管理
java·开发语言·jvm
记得开心一点嘛7 小时前
手搓Springboot
java·spring boot·spring
技术猿188702783517 小时前
PHP 与 WebAssembly 的 “天然隔阂”
开发语言·php·wasm
薄荷撞~可乐7 小时前
C#Task(Api)应用
开发语言·c#
老华带你飞7 小时前
租房平台|租房管理平台小程序系统|基于java的租房系统 设计与实现(源码+数据库+文档)
java·数据库·小程序·vue·论文·毕设·租房系统管理平台
独行soc7 小时前
2025年渗透测试面试题总结-66(题目+回答)
java·网络·python·安全·web安全·adb·渗透测试