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 小时前
从 Go 基础到 K8s:一条可落地的 Go 服务端成长路线
开发语言·后端·golang·kubernetes
神明不懂浪漫2 小时前
【第五章】Java中的继承与多态
java·开发语言
神州世通3 小时前
解密企业通信安全防线:Avaya Aura 三层安全架构深度解析
开发语言·php
AC赳赳老秦4 小时前
企业工商公开信息采集分析:OpenClaw 批量查询企业工商信息,生成企业画像报告
大数据·开发语言·python·自动化·php·deepseek·openclaw
AI多Agent协作实战派4 小时前
AI多Agent协作系统实战(十七):凌晨4点,我的AI系统在“假装工作“——3个bug同时爆炸的5小时
java·前端·bug
gaolei_eit4 小时前
Java+Ai+vue
java·spring·maven
qq_2518364574 小时前
基于java Web 动漫视频网站毕业论文
java·开发语言·前端
野生风长4 小时前
C++入门基础:从命名空间到引用与指针的全面解析
开发语言·c++
LayZhangStrive4 小时前
JUC相关的函数、注解、变量杂记
java·面试·多线程·juc
未秃头的程序猿4 小时前
给公司做了个AI客服Agent,用的Spring AI 1.0,3天上线领导拍板了
java·后端·ai编程