【Java】基础知识

Java程序的结构

  1. 源文件(扩展名为*.java):源文件带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个类。类的内容必须包含在花括号里面。
  2. 类:类中带有一个或多个方法。方法必须在类的内部声明。
  3. 方法:在方法的花括号中编写方法应该执行的语句。
  • 总结一下:类存在于源文件里面;方法存在于类中;语句存在于方法中。

注意:在一个源文件中只能有一个public修饰的类,而且源文件名字必须与public修饰的类名字相同。

JDK、JRE、JVM之间的关系?

  • JDK(Java Development Kit):Java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。
  • JRE(Java Runtime Environment):Java运行时环境,包含了JVM,Java基础类库。是使用Java语言编写程序运行的所需环境。
  • JVM:Java虚拟机,运行Java代码

注释

文档注释

文档注释: /** 文档注释 */,可以被javadoc工具解析,生成一套以网页文件形式体现的程序说明文档

文档注释生成的命令

bash 复制代码
javadoc -d 目录名字 -author -version -encoding UTF-8 -charset UTF-8 目标文件名字.java

说明:

  • 在cmd中,使用javadoc工具从Java源码中抽离出注释
  • -d 创建目录 myHello为目录名
  • -author 显示作者
  • -version 显示版本
  • -encoding UTF-8 -charset UTF-8 字符集修改为UTF-8

标识符

定义:在程序中由用户给类名、方法名或者变量所取的名字。

【硬性规则】

  • 标识符中可以包含:字母、数字以及 下划线和 $ 符号等等。
  • 注意:标识符不能以数字开头,也不能是关键字,且严格区分大小写。

【软性建议】

  • 类名:每个单词的首字母大写(大驼峰)
  • 方法名:首字母小写,后面每个单词的首字母大写(小驼峰)
  • 变量名:与方法名规则相同

数据类型

基本数据类型

  1. 四类:整型、浮点型、字符型以及布尔型
  2. 八种:

注意:

  • 不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节
  • 整形和浮点型都是带有符号的
  • 整型默认为int型,浮点型默认为double
  • 字符串属于引用类型

Java的包装器

包装器只有基本数据类型有

|----------|---------------|
| 关键字 | 包装器 |
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
[包装器]

Java的输入输出

输出到控制台

基础语法

java 复制代码
System.out.println(msg);// 输出一个字符串, 带换行
System.out.print(msg);// 输出一个字符串, 不带换行
System.out.printf(format, msg);// 格式化输出

说明:

  • println 输出的内容自带 \n, print 不带 \n
  • printf 的格式化输出方式和 C 语言的 printf 是基本一致的.

从键盘输入

使用 Scanner 读取字符串/整数/浮点数

java 复制代码
import java.util.Scanner;  // 需要导入 util 包
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name = sc.nextLine();
System.out.println("请输入你的年龄:");
int age = sc.nextInt();
System.out.println("请输入你的工资:");
float salary = sc.nextFloat();
System.out.println("你的信息如下:");
System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
sc.close(); // 注意, 要记得调用关闭方法
相关推荐
麦兜*9 分钟前
Redis高可用架构设计:主从复制、哨兵、Cluster集群模式深度对比
java·数据库·spring boot·redis·spring·spring cloud·缓存
王嘉俊92511 分钟前
Redis 入门:高效缓存与数据存储的利器
java·数据库·redis·后端·spring·缓存·springboot
王维14 分钟前
【shardingsphere-jdbc】分表实践
java·数据库
YH丶浩22 分钟前
vue自定义数字滚动插件
开发语言·前端·javascript·vue
zhangfeng113323 分钟前
基于STRING数据库构建模型基因的PPI网络 基于GeneMANIA构建Hub基因的功能相似网络
开发语言·生物信息
无限进步_26 分钟前
【C语言】计算两个整数二进制表示中不同位的个数
c语言·开发语言
道可到37 分钟前
淘宝面试原题 Java 面试通关笔记 02|从编译到运行——Java 背后的计算模型(面试可复述版)
java·后端·面试
DKPT43 分钟前
JVM如何管理直接内存?
java·笔记·学习
SimonKing44 分钟前
GitHub 标星 370k!免费编程资源大合集,从此自学不花一分钱
java·后端·程序员
kfepiza1 小时前
Java的任务调度框架之Quartz 笔记250930
java·java ee