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

2022-7-13 第六小组 王岩 学习日记(5th day)

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

2022-7-13 第六小组 王岩 学习日记(5th day)

Java基础小知识
  • java发展史
  • java语言:半解释半编译型语言
  • 操作系统基本操作
  • Java的八大特点
  • Java环境的搭建
    •  安装Java步骤
  • JavaSE,JavaEE,JavaME的区别
  • 简单创建一个程序:
  • JDK、JRE、JVM含义
  • Java的要求
  • Java基础
    •  类(class)
    •  注释
    •  关键字
    •  数据类型
    •  变量
    •  精度
    •  数据类型转换
      •   自动类型转换
      •   强制类型转换
    •  运算符
      •   算术运算符
      •   赋值运算符
      •   比较运算符
      •   逻辑运算符
      •   三元运算符
      •   char的特殊性
    • 二进制存储单位
  • 思维导图

java发展史

  Java是在1991年由SUN公司的James Gosling(Java之父-詹姆斯高斯林)及其团队所研发的一种编程语言,第一个版本耗时18个月,最开始命名为Oak(一种橡树)。Java现在广泛应用于各种大型互联网应用,其设计的最初动机主要是平台独立(即体系结构中立)语言的需要,可以嵌入到各种消费类电子设备(家用电器等),但市场反应不佳。

  随着1990年代互联网的发展,SUN公司看到了Oak在互联网上的应用场景,在1995年更名为Java(印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名),随着互联网的崛起,Java逐渐称为重要的Web应用开发语言。Java的发展可以主要看JavaWeb的发展,Java也见证了互联网的发展过程。

  发展至今,Java不仅是一门编程语言,还是一个由一系列计算机软件和规范组成的技术体系,Java 是几乎所有类型的网络应用程序的基础,也是开发和提供嵌入式和移动应用程序、游戏、基于 Web 的内容和企业软件的全球标准。

  从笔记本电脑到数据中心,从游戏控制台到科学超级计算机,从手机到互联网,Java 无处不在!

java语言:半解释半编译型语言

  解释:语言。JS。浏览器可以直接运行JS,不需要翻译
  编译:Java,Scala。.java文件是我们程序员写的,是以十进制为单位写的文件,计算机只认二进制。我们所编写的.Java文件,计算机是不认识的,我们需要有一个翻译把我们写的java文件翻译给计算机听。

操作系统基本操作

基本命令:

打开指令控制台win+r
直接切换到目标的盘输入盘符:盘名+:
返回上一级目录cd …
进入指定目录cd 目录名
查看当前目录的文件信息dir
创建一个空文件(空文件名为a.txt)copy nul a.txt
向文件里写入内容echo 内容>a.txt
复制文件copy 被复制的文件 新建的文件名
删除文件(不走回收站)del 文件名
Java的八大特点

1.面向对象
2.跨平台/可移植性:平台就是操作系统,用JAVA写的软件可以在任意操作系统上运行的。
3.简单性:就是C++语法的简化版,我们也可以称为"c+±"。指的就是把C++的一些内容去掉。
4.解释执行(高性能):计算机执行的是.class,解释执行.class。
5.多线程:多个任务同时进行。能更好的进行交互相应和实时行为。
6.分布式:Java是为Internet的分布式环境设计的,因为它能够处理TCP/IP协议。事实上,通过URL访问一个网络资源和访问本地文件是一样简单的。Java还支持远程方法调用(RMI,Remote Method Invocation),
7.健壮性:强数据类型的语言。有异常处理和垃圾回收机制。Java程序不可能造成计算机崩溃。即使Java程序有错误。
8.安全性:插件设置一个安全防范机制。

Java环境的搭建  安装Java步骤

 (1)下载JDK:JAVA下载官网
 (2)安装JDK:打开下载的JDK压缩包,一直next就行,但是注意安装路径,配置环境变量是需要用到,一般是>>>>C:Program FilesJavajdk-11.0.15<<<<
 (3)配置环境变量:
    1.计算机-右键-属性-高级系统设置-环境变量-系统变量上新建JAVA_HOME(C:Program FilesJavajdk-11.0.15)
    ​2.找到原来就存在的Path,双击打开,新建一行:安装jdk安装路径(C:Program FilesJavajdk-11.0.15bin)
   ​ 3.常用指令:java javac,javap,java -version,java -jar。>>>在cmd中输入,用来测试是否安装成功JDK

JavaSE,JavaEE,JavaME的区别

  javaSE:早期做桌面应用程序,现在就是JAVA基础
  ​javaEE:企业级应用。要学习的
  javaME:手机端,淘汰。

简单创建一个程序:

  1.创建一个.java文件(填写以下内容):

public class hello{ //类名 public 访问权限修饰符 class类 +类名
public static void main(String [] args){ //主方法,程序运行
System.out.println(“hello world”);//打印输出,相当于console.log();
}
}

注:类名必须和建的.java文件名一样。
  2.通过cmd指令控制台,找到这个JAVA文件

  3.java文件是我们写的,计算机不认识,所以我们需要翻译(编译)
    用java c指令操作hello.java之后会创建了一个hello.class—–这个.class文件计算机能看懂。说明.class文件是一个二进制文件,把我们写的.java文件以二进制形式转换成为.class文件。.class文件又叫做字节码文件
  4.执行.class文件: java hello

总结一下:通过javac hello.java把他编译成了.class,系统去解释执行了这个hello.class

那么到底是谁做的这些事呢?

JDK、JRE、JVM含义

  在我们去配置环境变量的时候,实际上相当于在系统上搭建了一台虚拟机。
  JDK:java Development Kit ————–java开发工具包
  JRE:java Runtime Environment —–java运行环境
  JVM:java Virtual Machine ————-java虚拟机
  如果只需要运行,不需要开发,可以只安装JRE
  JDK包括JRE,JDK10之前有单独JRE,从JDK10以后没有单独的JRE的。

Java的要求

  1.Java严格区分大小写;
  2.写代码的时候,一行代码要么有;结尾,要么有{}结尾,什么时候
  3.所有的符号都是英文状态下。
  4.代码提示,一定要注意看代码提示,如果写的东西没有提示,多半是错误的。(在idea下)

Java基础  类(class)

   什么是类?
     类是Java开发中的一个最小的单位,一个Java开发的项目是由一堆的类组成的。
   类名的命名规则:
     在开发中,只要是可以命名的东西—标识符。
    (1)只能有字母,数字,下划线,美元符号组成,数字不能开头。
    (2)不建议使用$号,下划线尽量不要开头(能不用就不用)。
    (3)推荐使用字母+数字,大部分都是使用字母(英文单词)。
    (4)驼峰式命名:如果这个类名由多个单词组成,每个单词的首字母大写。(eg:stuNo)

 注释

1.单行注释:// 快捷:CTRL+/
2.多行注释: 快捷:/**回车
​ 三种注释都可以调试代码。

 关键字

官方的解释:这个字有他独一无二的作用。
关键字不能用来命名。
关键字都是小写的。
总共有48个关键字、2个保留字、3个特殊直接量。
保留字:goto const.//现在没什么意义但是跟关键字有一样的功能。

 数据类型

基本数据类型:四类八种(都是关键字)

  1.整型

数据类型所占位数范围
byte—字节型1个字节=8位2^-7 ~ 2^7-1
short–短整型2个字节=16位2^-15 ~ 2^15-1
int-----整型4个字节=32位2^-31 ~ 2^31-1
long—长整型8个字节=64位2^-63 ~ 2^63-1

使用长整型时需要在值得后面加上一个L或l;这里推荐写L。小写的看不清。

  2.浮点型

数据类型所占位数范围
float----单精度浮点型4个字节=32位1.4e-45~3.4e38
double–双精度浮点型8个字节=64位4.9e-324~1.8e308
使用单精度时后面需要添加f或F,默认是F。

  3.字符型

数据类型所占位数
char—字符型2字节=16位

字符型需要添加单引号,并且引号中只能放一个

  4.布尔型

数据类型所占位数值
boolean----布尔型1个字节=8位true 或 false

引用输入类型
  1.类
  2.接口
  3.数组

 变量

目的:

1.定义变量:为了后期的维护,重复利用;
2.减少使用字面量。
须知:

如果在程序中看见了一个整数的字面量,没有任何数据类型声明的话,它默认是int
如果在程序中看见了一个小数的字面量,没有任何数据类型声明的话,它默认是double
JAVA中的除法,如果两个整数相除,结果一定是整数
整数和整数做运算,得到的一定是整数。

 精度

整型:4种整数类型,精度是和位数挂钩的,位数越大,精度越高。
浮点型:double的精度比float要高。
浮点型和整型比的时候,浮点型就比整型高。
低精度的和高精度的做运算,得到的一定是高精度数据类型的结果。
为什么int类型的数据给byte给不了?答:大给小,小的装不下。

 数据类型转换   自动类型转换

   (自动类型提升)低精度–>高精度

  强制类型转换

高精度–>低精度。如果平白无故的想把低精度转到高精度,也得是强转。
如果浮点型转到整型,没有四舍五入,直接抹掉小数点后面的。

	byte a=127;
	a=(byte)(a-1);//强制类型转换
	byte c=(byte)(a+1);
	System.out.println(a);
	System.out.println(c);
	double d=1.9;
	int x=(int)d;
	System.out.println(x);
	int i1=10;
	int i2=20;
	System.out.println((double)i1 / i2);
输出结果:126
		127
		1
		0.5
 运算符   算术运算符

无论a++,还是++a,他的本意都是让a自增。
a++:表示先附值后运算。
++a:表示先运算后附值。
a–,–a也一样,但是没有a**,a//。
附体一道:

int a=10;
System.out.println(a++ + ++a + a++ + a);

输出结果:47

  赋值运算符

+= -= *= /= %=
从计算结果来看,a+=1 —–>a=a+1
附值运算符可以进行数据类型的转换,包括a++也可以。

	byte b=127;
    b++;//虽然不报错但是
    System.out.println(b);
    b+=1;
    System.out.println(b);

输出结果:-128 -127

  比较运算符

< > >= <= == !=
相较于JS而言没有===(三等),因为Java已经比过了。

	double x=10.0;
	int y=10;
	System.out.println(x == y);

输出结果:true

  逻辑运算符

与&& 或|| 非! 异或^
与----只有当所有条件都为true,整体结果才是true。如果有一个为false,则整体即为false
双与–当发现条件中,只要有一个false,就停止判断。(效率高)
单与–无论有多少个false,所有条件都判断。
或—只有当所有条件都为false,整体结果才是false。如果有一个为true,则整体即为true
单双或同单双与
非—取反
异或–条件结果一样为假,条件结果有不一样的,就是真的。
附加:
<>----左移/右移
<<>>-----无符号右移/左移(将运算符左边的对象向右/左指定的位数。采用0的扩展机制。)

int z=10;
int v=20;
System.out.println(z > 5 && v < 66);
System.out.println(z < 5 || v < 66);
System.out.println(!(v<66));
System.out.println(z ^ v);
System.out.println(z | v);
System.out.println(z << 3);
System.out.println(z >>> 3);

输出结果:

true
true
false
30
30
80
1

  三元运算符

要求:2个表达式的运行结果的数据类型是相同或可以自动转换成相同的。

	int p=10;
    double q=20;
    double mm=p > q ? p : q;//用double 不是因为q是double,而是double的精度最高,无论是int,还是double,都可以自己提升高度。        		
    System.out.println(mm);

输出结果:20.0

  char的特殊性

//映射表ASCII码
//字符型abcdefg…每一个字符在计算机保存时都是以ASC码的形式保存的。
//char类型是16位,short是一样的,可以自动转换成int,long,float,
//当char自动转换成数值类型,会对应着ascii码去转换
//把整数类型转换成char类型,会对应着ascii码去转换
//由于char类型有这样的特殊性,所以开发中金浪不适用char
//+连接符功能

	char l='l';
    int k=l;
    System.out.println(l);
    System.out.println(k);

输出结果:l
108

二进制存储单位

1bit=1位
1byte=8bit
1KB=1024b
1MB=1024K
1GB=1024M
1TB=1024G
1PB=1024T

思维导图

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

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

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