Java基础

1.简单介绍Java语言

1.概念:

    Java语言是一门面向对象编程的语言,吸收了C++的优点,摒弃了C++中一些难以理解的概念,例如:多继承、指针等,因此Java就有了量大特征:简单易用、功能强大。面向对象脑图

2.特点:

    面向对象:封装(把相关的数据封装成一个“类”)、继承(子类自动享有父类的方法)、多态(增加灵活性、重复利用性)。
    平台无关性:一次编写,到处运行( Java 的虚拟机机制,在不同的平台上运行无需重新编译)。
    支持多线程:程序需要同时执行多个任务,通过引入java.lang.Thread 类来体现。
  Thread类 :每个线程都是通过某个特定Thread对象的run()来完成操作,把run()的主体称为线程体,通过该Thread对象的start()方法来启动线程。
    编译与解释并存:Java程序需要通过编译器将程序编译为字节码(.class)文件,然后jvm通过类加载器将文件加载到内存中(运行时数据区),由于字节码是jvm的指令集规范,不能直接交给操作系统处理,因此需要特定的命令解析器执行引擎将字节码解释成底层系统指令再交由CPU去执行,这个过程中需要调用其他语言的接口 本地库接口实现整个程序的功能。
    字节码:指 Java 程序经过编译产生的.class 文件,字节码能够被虚拟机识别,从而实现 Java 程序的跨平台性。
在这里插入图片描述

3.JVM、JDK、JRE的区别

    JVM:Java 虚拟机,Java 程序运行在 Java 虚拟机上。针对不同系统的实现(Windows,Linux,macOS)不同的 JVM,因此 Java 语言可以实现跨平台。
    JRE:Java 运⾏时环境,运⾏已编译 Java 程序所需的所有内容的集合,包括 Java 虚拟机(JVM),Java 类库,Java 命令和其他的⼀些基础构件,但是不能⽤于创建新程序。
    JDK:功能⻬全的 Java SDK,它拥有 JRE 所拥有的⼀切,还有编译器(javac)和⼯具(如 javadoc 和 jdb),能够创建和编译程序。

简而言之,JDK 包含 JRE,JRE 包含 JVM。
在这里插入图片描述

2.数据类型

    Java语言的数据类型分为两种:基本数据类型和引用数据类型。

1.基本数据类型

    1>基本数据类型脑图
    2>Java 基本数据类型范围和默认值:在这里插入图片描述

2.引用数据类型

    类(class)、接口(interface)、数组([])

3.类型转换

    Java中所有的数值型变量可以相互转换,当把一个表数范围小的数值或变量直接赋给另一个表数范围大的变量时,可以进行自动类型转换;反之,需要强制转换。

自动类型转换方向:在这里插入图片描述
举例说明:

float f = 2.3;  
原因如下:2.3 是单精度数,将双精度型(double)赋值给浮点型(float)属于向下转型,会造成精度损失,因此需要强制类型转换float f =(float)3.4; / float f =3.4F;

short s1 = 1; s1 = s1 + 1;	
原因如下:编译无法通过,1int类型,s1+1应该也是int类型,结果需要将int强制转换为shortshort s1 = 1; s1 += 1;
原因如下:编译可通过, s1+= 1;相当于 s1 = (short(s1 + 1);其中有隐含的强制类型转换。

4.自动拆箱和自动装箱

在这里插入图片描述

5. &和&&有什么区别?

    参考脑图中运算符中的逻辑运算符部分。

6.自增自减

    符号在前,先变后用;符号在后,先用后变。

当 b = ++a 时,先自增(自己增加 1),再赋值(赋值给 b);当 b = a++ 时,先赋值(赋值给 b),再自增(自己增加 1)。也就是,++a 输出的是 a+1 的值,a++输出的是 a 值。

执行此代码块:

int i  = 1;
i = i++;
System.out.println(i);

运行结果:
在这里插入图片描述
运行此代码块:

int i = 1int temp = i;
i++;
i = temp;
System.out.println(i);

在这里插入图片描述

7.break ,continue ,return 的区别及作用

    break: 跳出整个循环,不再执行循环(结束当前的循环体)
    continue: 跳出本次循环,继续执行下次循环(结束正在执行的循环 进入下一个循环条件)
    return: 程序返回,不再执行下面的代码(结束当前的方法 直接返回)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值