JDK的卸载与安装 :
1 卸载
a 从程序中卸载 控制面板 - 程序和功能 - 卸载JDK;
b 删除 C:\Windows\System32 下面的 java javac javaw...
c 从环境变量中删除配置
计算机 - 右键属性 - 高级系统设置 - 高级 - 环境变量 把 JAVA_HOME Path中的java部分,classpath 都删除
2 安装 下一步。。。
注意,安装路径,单独建立文件夹管理起来,文件夹的名字不要有中文,不要有空格;
安装过程中弹出安装jre 点击取消,不需要单独安装
编译的语法 : javac Hello.java javac 源文件包括扩展名
运行的语法 : java Hello java 字节码文件的名字,不要扩展名
环境变量:JAVA_HOME = jdk的根目录 E:\java\jdk1.7
Path = %JAVA_HOME%\bin
为何需要配置环境变量:需要在任意目录文件下都能编译和运行文件(不需要将源文件放到bin下面去运行)
java的跨平台原理:不同的操作系统都安装相应的JVM,不同的JVM可运行所有的java文件:即一(一个java程序)对多(多个不同的JVM)对多(多个不同的操作系统)的关系
一个类中可不可以没有主方法main?
a 没有主方法的类一样可以编译通过,符合java的语法规范
b 没有主方法的类是不能够单独运行的
主方法是程序的入口,JVM从主方法开始执行代码
1 Java中是严格区分大小写的 System system 是不一样的
2 字节码文件的名字和源文件中的类名一样
3 如果一个类使用public修饰,那么要求 类名和源文件名必须一致
?? 一个Java文件中可以有多个public修饰的类吗?
一个源文件中只能有一个public类。
一个源文件可以有多个非public类。
4 一个Java源文件中可以写多个类,但是建议一个文件写一个类
Java中的注释:
1 // 单行注释 注释一行 是以行分隔符为准的
2 /* */ 多行注释, 可以注释多行
3 /** */ 文档注释, 也可以注释多行,可以通过javadoc命令把文档注释中的内容生成一个文档
a 注释是写给程序员看的,编译之后其实没有用了
b 多行注释和文档注释都不能够相互的嵌套
java中的关键字-保留字-标识符
关键字 : 其实就是在设计Java语言的时候定义的一些有特殊意义的单词,例如class 表示声明一个类
全部都是小写, 学一个记一个
保留字 : 现在暂时没有特殊意义,Java的发展以后可能会用到的 goto 和 const
标识符 : 例如我们设计的类名 方法名 变量名 这些东西就是标识符
标识符的命名规范:
a 可以由 数字 大小写字母 _ $组成,但是数字不能够开头
其实我们的中文 日文也是可以的,但是不推荐
b 不能够使用Java中的关键字和保留字作为标识符 例如 class class{} 错误的写法
c 不建议使用Java中已经存在了的类名作为自己的类名
类名 : 首字母大写,如果有多个单词,每一个单词的首字母都大写
方法名 : 首字母小写,如果有多个单词,后面的单词的首字母都大写
变量名 : 首字母小写
变量 (非常重要的)
把一个变量看成是一个变量盒子(容器),可以存储一个数据(常量)
假设现在又一个数据 19 需要使用一个变量盒子存储起来
① 先得有一个变量--->变量的声明(定义)
格式 : 数据类型 变量名;
② 把数据值装进去---》给变量赋值 使用赋值符号 例如 =
a 先声明后赋值:
int age;
age = 19; // 习惯在 = 的两边各加一个空格
b 声明的时候立即赋值
int age = 19;
③ 取出值使用
a 直接打印
b 参与运算
变量的分类: 安装声明的一个位置来区分
局部变量 声明在方法中或者方法的形参(方法一对小括号中的变量)以及代码块中
成员变量 直接声明在类中的变量(局部变量之外的所有都是成员变量)
变量的作用域 (可以理解成变量的可访问范围)
局部变量 只能是声明的这个局部可以访问 (例如 方法里面声明 只能够是本方法中可以访问)
成员变量 整个类中都可以访问
变量的声明格式 数据类型 变量名;
Java中任何东西都可以看成 数据 都有自己的类型
一 基本数据类型 * 8
整数
byte 8
short 16
int 32
long 64
小数
单精度 float 32
双精度 double 64
字符 char 16
布尔 boolean 1 只有两个值 true false 不能够使用 1 0 表示
二 引用数据类型 * n
数组 类 接口...
基本类型之间的相互转换
可以把低精度的直接赋值给高精度的变量;
不能直接把高精度的值赋值给低精度的
byte8 short(char)16 int32 long64 float32 double64 ---> 都是数值类型的
为什么 float在long的后面呢? 整数的存储和小数的存储方式不一样 ---》 查资料了解
高精度 ---》 低精度 强制转换
double d = 3.99999;