栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

初学Java-day01

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

初学Java-day01

1.Java简介

Java 是当今最流行的编程语言之一,自二十世纪九十年代诞生以来,一直保持着强劲的势头和优秀的口碑,长期占据着 TIOBE 等知名排行榜的头把交椅。国内外大多数互联网企业都以 Java 为主要开发语言,无论是国内的阿里巴巴、腾讯、百度,还是国外的 Facebook、Google 等知名企业,都对 Java 语言有着很大的依赖性,其中的很多产品也都是基于 Java 语言研发而成的。

2.开启Java之路------HelloWorld 2.1安装jdk

学习Java首先要安装Java软件,Java由jdk,jre,jvm三部分组成,其中jdk = jre + 开发工具包, jre = jvm + 核心API,因此安装Java只需安装jdk即可。jdk可在官网上下载。

2.2 运行HelloWorld

jdk安装之后,可以在专属文件夹中建立文档Study,在此文档中新建文件,扩展名后缀改为java,使用记事本(Editplus或者IDEA均可)打开文件,按照格式编辑源代码,该文件也被称为源文件
代码如下

public class  HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World!!!");
    }
}

随后在文件上方位置栏中输入 cmd进入
在dos命令窗口中输入以下命令编译运行程序
编译程序:

​ javac 文件名.java

​ 编译之后会有一个产出文件 文件名.class

运行程序:

​ java 文件名

​ 程序运行 运行的是class文件 class文件成为字节码文件

java11的一个新特性:

​ 编译运行一步进行:java 文件名.java
编写代码的注意事项:

1 文件的扩展名必须为.java

2 文件名必须和下图中的框选名称保持一致

3 在代码中所有的标点符号都必须是英文状态

4 代码需要有良好的格式:在java代码中 以大括号进行层级区分 在同一个大括号中的代码 应该具有相同的缩进层次 缩进一般一个层级缩进一个制表符(Tab)

5 在java代码中 每条语句结束必须以分号结尾

6 在java中 所有文件的存放路径或者软件的安装路径都必须是全英文的,路径中不能出现中文或空格 等特殊符号

7 当修改了java源程序之后 每次都需要重新编译运行

3.进制

1.进制(理解)

1.1.二进制

二进制,是计算技术中广泛采用的一种数制,由德国数理哲学大师莱布尼茨于 1679 年发明。二进制数据是用 0 和 1 两个数码来表示的数。它的基数为 2,进位规则是“逢二进一”。数字计算机只能识别和处理由‘0’.‘1’符号串组成的代码。其运算模式正是二进制。

二进制对应两种状态,广泛应用于电子科学。比如:可以对应电子器件的开关状态、对应信号电压状态(+5V 等价于逻辑"1",0V 等价于逻辑"0")、对应卡带是否打孔状态、电磁存储(磁体状态:南为 0,北为 1)等等。

二进制广泛应用于我们生活的方方面面。比如,广泛使用的摩尔斯电码,它由两种基本信号组成:短促的点信号“·”,读“滴”;保持一定时间的长信号“—”,读“嗒”。然后,组成了 26 个字母,从而拼写出相应的单词。

1.2.十进制转二进制

十进制整数转换为二进制整数采用"除 2 取余,逆序排列"法
十进制数 29 转成二进制就是:11101

1.3.二进制转十进制

二进制转十进制采用“权相加法”。
八进制:

逢八进一 0-7

十进制转八进制 : 借助于二进制 先转换为二进制 在使用三位2进制表示一位八进制

十六进制: 逢十六进一 0–9 a–f

十进制转换为十六进制 : 借助于二进制 先转换为二进制 在使用四位2进制表示一位十六进制

4.注释

注释就是对一行或者多行代码的功能或者作用进行简单描述或说明‘

三种注释:

​ // 单行注释
多行注释

​ 文档注释

public class HelloWorld {
    
    public  static  void main(String[] args){
    // 这是一条输出语句       这是单行注释
        System.out.println("Hello World");
    }
}

​ 多行注释

​ 文档注释

5 关键字(理解)

关键字:就是被Java语言赋予了特定含义的单词。

5.1 关键字特点
1 关键字的字母全部小写。
2 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。比如现在我们能看到的public、class、static等。

6变量

在日常生活中,我们通常都用3.14代表圆周率去进行近似计算。只要用到圆周率的地方,我们使用的都是3.14,也就是说,

这个值是固定不变的,这样的值就是我们说的常量。

常量:在程序运行过程中,其值不可以发生改变的量。

常量通常指的是一个固定的值,例如:1、2、3、’a’、’b’、true、false、”helloWorld”等

在 Java 语言中,主要是利用关键字 final 来定义一个常量。 常量一旦被初始化后不能再更改其值。

声明格式为:final type varName = value;

为了更好的区分和表述,一般将 1、2、3、’a’、’b’、true、false、”helloWorld”

等称为字符常量,而使用 final 修饰的 PI 等称为符号常量。

7数据类型(记忆、应用)

7.1 计算机存储单元

我们知道计算机是可以用来存储数据的,但是无论是内存还是硬盘,计算机存储设备的最小信息单元叫**“位(bit)”,我们又称之为“比特位”,通常用小写的字母”b”表示。而计算机中最小的存储单元叫“字节(byte)”,通常用大写字母”B”**表示,字节是由连续的8个位组成。

除了字节外还有一些常用的存储单位,大家比较熟悉,我们一起来看看:

1B(字节) = 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

7.2 数据类型

Java语言是强类型语言,对于每一种数据都给出了明确的数据类型,不同的数据类型也分配了不同的内存空间,所以它们表示的数据大小也是不一样的。
6.3 数据类型内存占用和取值范围
在java中整数默认是int类型,浮点数默认是double类型。

6.3.1.整数类型: byte、 short、 int、 long

  • Java各整数类型有固定的表数范围和字段长度,不受具体OS的影响,以保证java程序的可移植性。
  • java的整型常量默认为 int 型,声明long型常量须后加‘l’或‘L’
  • java程序中变量通常声明为int型,除非不足以表示较大的数,才使用long
7.4.浮点数
    • 十进制数形式:如: 5.12 512.0f .512 (必须有小数点)

    • 科学计数法形式:如: 5.12e2 512E2 100E-2

      float 单精度 尾数可以精确到7位有效数字 4个字节

      double 双精度 精度是float的两倍 这是浮点型的默认类型 8个字节

   public  static  void main(String[] args){
        float f = 3.14F; //浮点数默认的类型是double  当我们想要表示一个float类型的浮点数的时候   此时我们就需要在数值后边加上一个F或者f
        double  d = 3.14D;
        float  f1 = 0.1f;
        double d1 = 1.0/10;
        System.out.println(f1 == d1);//false
        float f2 = 42323442F;
        float f3 = f2 +1;
        System.out.println(f2==f3);//true
    }
以上代码  由于收到长度和精度的限制,无法精确地去表示一些浮点数  只是近似的等于 。因此在以后的开发中,当我们在遇到需要精确表示小数的时候 特别是金融方面的时候,千万不要直接使用float和double去表示。
7.5.字符型char

char表示字符 占用两个字节

java中的所有的字符都使用的是Unicode编码 一个字符可以存储一个字母 可以存储一个汉字 还可以存储其他的字符

字符的表示形式:

public  static  void main(String[] args){
        //字符的第一种表示形式  使用单引号引起来的
       char  c1 ='1';
       char  c2 = '中';
       char c3 = 'a';
       char c4 = '&';
       //转义字符
        char  c5= 't';//制表符
        char c6='r';//回车
        char c7 = 'n';//换行
        //常量表示   直接使用unicoide值进行表示
    }
7.6 布尔类型:boolean

表示的是逻辑值 只有true和false 两个值

8.字符串

字符串不属于基本类型 字符串属于引用类型

字符串是有双引号引起来的多个字符的组合序列

    public  static  void main(String[] args){
//        字符串
        String  s1 = "abc";
        int a = 100;
        s1 = s1 + a;//此时完成的字符串拼接
        System.out.println(s1);
    }
9.常见的字符集(了解) 9.1. ASCII码

在计算机内部, 所有数据都使用二进制表示。 每一个二进制位(bit) 有 0 和 1 两种状态,因此 8 个二进制位就可以组合出 256 种状态, 这被称为一个字节(byte)。 一个字节一共可以用来表示 256 种不同的状态, 每一个状态对应一个符号, 就是 256 个符号, 从0000000 到 11111111。

ASCII码: 上个世纪60年代, 美国制定了一套字符编码, 对英语字符与二进制位之间的关系, 做了统一规定。 这被称为ASCII码。 ASCII码一共规定了128个字符的编码, 比如空格“SPACE”是32(二进制00100000), 大写的字母A是65(二进制01000001)。 这128个符号(包括32个不能打印出来的控制符号), 只占用了一个字节的后面7位, 最前面的1位统一规定为0。

缺点:

  • 不能表示所有字符。

  • 相同的编码表示的字符不一样:

      比如, 130在法语编码中代表了é, 在希伯来语编码中却代表了字母Gimel (ג)
    
9.2.Unicode 编码

乱码:世界上存在着多种编码方式,同一个二进制数字可以被解释成不同的符号。因此,要想打开一个文本文件,就必须知道它的编码方式,否则用错误的编码方式解读,就会出现乱码。

Unicode: 一种编码,将世界上所有的符号都纳入其中。每一个符号都给予一个独一无二的编码,使用 Unicode 没有乱码的问题。

Unicode 的缺点: Unicode 只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储:无法区别 Unicode 和 ASCII:计算机无法区分三个字节表示一个符号还是分别表示三个符号。另外, 我们知道,英文字母只用一个字节表示就够了,如果unicode统一规定,每个符号用三个或四个字节表示,那么每个英文字母前都必然有二到三个字节是0,这对于存储空间来说是极大的浪费。

9.3 UTF-8

UTF-8 是在互联网上使用最广的一种 Unicode 的实现方式。

UTF-8 是一种变长的编码方式。它可以使用 1-6 个字节表示一个符号,根据不同的符号而变化字节长度。

UTF-8的编码规则:

  • 对于单字节的UTF-8编码,该字节的最高位为0,其余7位用来对字符进行编码(等同于ASCII码)。

  • 对于多字节的UTF-8编码,如果编码包含 n 个字节,那么第一个字节的前 n 位为1,第一个字节的第 n+1 位为0,该字节的剩余各位用来对字符进行编码。在第一个字节之后的所有的字节,都是最高两位为"10",其余6位用来对字符进行编码。

  • 10.变量

变量就是计算机内存中的一块存储单元

变量所占据的空间大小有数据类型来决定

定义变量:

数据类型 变量名 = 变量值;

  int a = 100;

变量使用的注意事项:

1 在同一个大括号范围内 变量名称不允许重复

2 变量在第一次使用之前必须进行初始化(赋值)

  public  static  void main(String[] args){
        int a = 100;//声明的同时完成了变量的初始化
        a = 200;
        int b;//声明变量
        b = 20;//初始化变量
        b = b+1;//变量使用
        System.out.println(b);//使用变量
    }

3 对于我们的long和flot类型 在声明该类型的变量的时候 必须在其末尾添加标记

11 标识符

标识符 凡是在java中能够由我们自己命名的地方都称为标识符

标识符:主要包括类名 方法名称 变量名 接口名 常量名 等

标识符的规则:

1 组成 : 只能由数字 字母 下划线(_) 美元符号($)

2 不能以数字开头

3 不能是关键字

4 标识符是大小写敏感的(严格区分大小写的)

         int a = 3;
         int _123=23;
         int $22a=33;
         int 变量a = 11;//java支持中文命名  但是不允许
        int 111a = 1111;//不合法
        int a# = 0;//不合法
        int int = 20;//不合法

5 标识符的命名尽量做到见名知意 尽量采用有意义的英文单词(或者采用公认的单词的缩写) 如果实在想不到合适的单词 可以采用拼音

11.1 常见的命名约定

驼峰命名法:

方法,变量

​ 1 标识符是一个单词的时候 所有的字母都小写 name

​ 2 标识符如果有多个单词组成 则从第二个单词开始 之后的每个单词的首字母要大写 firstName

类,接口:标识符无论是几个单词 每个单词的首字母都必须大写

12 数据类型转换(重点 理解)

自动类型转换

强制类型转换

自动类型转换: 把一个表示数据范围小的数值 或者变量赋值给一个表示数据范围大的

  //完成了数据类型的转换  将int类型转换为了double
double  d  = 100;// 100 这个数值单独来说他是属于int类型   但是当我们完成赋值操作之后 此时保存在d这个变量中的数据就是double  自动类型转换
byte  b = 100;// byte -128--127
int i= b;//  将byte转换为了int   有小范围到大范围 自动类型转换
i = 200;
b = (byte)i;//强制转换  转换是存在一定的风险的   会造成数据的损失
System.out.println(b);

强制类型转换

把一个大范围的数值或者变量赋值给另一个表述数据范围小的变量

当把大范围的数据强制转换为小范围的数据的时候 保留低位 舍弃高位

数据类型 变量 = (目标类型) 变量/数据;

	byte  b1 = 10;
        byte  b2 =20;
        byte b3 = (byte) (b1 + b2);// 在进行算术运算时  会默认自动将整数转换为int类型 在计算结果   结果就是一个int类型  此时如果要将b1 + b2的结果赋值给b3  则需要强制转换

boolean 不能与其他类型进行相互转换

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/340413.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号