java基础1_标识符,数据类型

时间:2023-03-09 08:27:42
java基础1_标识符,数据类型

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;