ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java知识点复习

2021-06-14 22:58:34  阅读:119  来源: 互联网

标签:知识点 Java 复习 对象 数据类型 java 方法 变量


JDK JRE JVM

JDK:
Java标准开发包,它提供了编译、运⾏Java程序所需的各种⼯具和资源,包括Java编译器、Java运⾏时环境,以及常⽤的Java类库等。

JRE:
Java运⾏环境,⽤于解释执⾏Java的字节码⽂件。

JVM
Java虚拟机,是JRE的⼀部分。负责解释执⾏字节码⽂件,是可运⾏java字节码⽂件的虚拟计算机

区别联系:(问答题会考可能)
JDk包含JRE,JDK 和 JRE 中都包含 JVM。JDK出了包含jre还包含⼀些常⽤开发⼯具和基础类库
JDK ⽤于开发,JRE ⽤于运⾏java程序
JVM 是 java 编程语⾔的核⼼并且具有平台独⽴性

javac: 编译 java源⽂件->class字节码⽂件(0,1)
java: 解释

基本语法

在这里插入图片描述
不能以数字开头。
不能是Java中的关键字。

关键字

在这里插入图片描述
在这里插入图片描述

变量分类

按声明位置
局部变量:方法或语句块内部定义的变量
成员变量:方法外部、类的内部定义的变量

在类体内定义的变量称为成员变量,它的作⽤域是整个类
在⼀个⽅法或⽅法内代码块中定义的变量称为局部变量

注意:
类外面(与类对应的大括号外面)不能有变量的声明

方法体内部声明的变量(包括形参)称为局部变量:方法体内部是指与方法对应的大括号内部

在方法体外,类体内声明的变量称为成员变量

按所属类型
基本数据类型变量(8种)
引用数据类型变量

在这里插入图片描述
在这里插入图片描述

数据类型

在这里插入图片描述

基本类型转换:

boolean类型不可以转换为其他的数据类型

整型、字符型、浮点型的数据在混合运算中相互转换,转换规则:
容量小的类型自动转换为容量大的数据类型,数据类型按照容量大小排序为:
byte,short,char->int,->long->float->double
byte,short,char之间不会互相转换,三者在计算时首先转换为int型

容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出

有多种类型的数据混合运算时,系统首先自动将所有数据类型转换为容量最大的那一种数据类型,然后在进行计算

实数常量默认为double,整数常量默认为int

数组

数组初始化
在这里插入图片描述
Java语言中声明数组时不能指定其长度

类与对象

三⼤特征:封装、继承、多态
对象可以看成是静态属性(成员变量)和动态属性(方法)的封装体

在这里插入图片描述必须使用new关键字创建对象
使用对象(引用).成员变量或来引用对象的成员变量
使用对象(引用).方法(参数列表)来调用对象的方法
同一类的每个对象有不同的成员变量存储空间
同一类的每个对象共享该类的方法

构造方法

使用new+构造方法创建一个新的对象
构造函数是定义在Java类中的一个用来初始化对象的函数
构造函数与类同名且没有返回值

重载

方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法。
调用时,系统会根据不同的参数表选择对应的方法

在这里插入图片描述
在这里插入图片描述

关键字

static 关键字
被static修饰的变量属于类变量,可以通过类名.变量名直接引⽤,⽽不需要new出⼀个类来

被static修饰的⽅法属于类⽅法,可以通过类名.⽅法名直接引⽤,⽽不需要new出⼀个类来

多态

实现继承
方法重写
父类引用指向子类对象
在这里插入图片描述

集合

多线程

线程和进程的区别
每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销
线程可以看成是轻量级的进程,同一类线程共享代码和数据空间,每个线程都有独立的运行栈和程序计数器(PC),线程切换开销小

多进程:在操作系统中能同时运行多个任务(程序)
多线程:在同一应用程序中有多个顺序流同时执行

问答题

  • 面向对象的特征有哪些方面 ?
    答:主要有以下四方面:
    1.抽象:
    抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
    2.继承:
    继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
    3.封装:
    封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
  1. 多态性:
    多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

  • String是最基本的数据类型吗?
    答:基本数据类型包括byte、int、char、long、float、double、boolean和short。(8个)
    java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类

  • int 和 Integer 有什么区别?
    答:Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。

  • 一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?
    答:可以。必须只有一个类名与文件名相同

标签:知识点,Java,复习,对象,数据类型,java,方法,变量
来源: https://blog.csdn.net/u011612364/article/details/117881835

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有