微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java知识点

目录

一、 java五大特点

二、八大基础数据类型

三、继承、多态、封装

四、关键字

五、抽象类和接口

六、堆和栈

七、拷贝

八、java常用类Object、String、Math、Date


一、 java五大特点


java概念简单,了解一些基本概念就可以编写应用程序。
1.面向对象,java是面向对象语言,万物皆对象,每个对象都有自己的类型,都可以实例化。
2.分布式,支持internet开发,提供用于网络应用编程的类库
3.安全,java提供安全机制以防恶意代码攻击。
4.健壮,java不支持指针,可以避免指针操作中的错误。还包括强类型和异常处理、废料自动回收等。

二、八大基础数据类型

在这里插入图片描述

三、继承、多态、封装

1. 继承
面向对象语言类和类关系的一种,继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
简单来说就是为了避免重复代码,在父类定义一些方法,它的每个孩子都必须要继承的,但是子类自己的方法体内可以不同。

继承的特性:
子类拥有父类非 private 的属性方法
子类可以拥有自己的属性方法,即子类可以对父类进行扩展。
子类可以用自己的方式实现父类方法
Java 只能单继承,不能多继承,但是可以多重继承。

在这里插入图片描述

2. 封装
封装,就是保护自己内部代码,将一些接口的实现细节包装隐藏。
举个例子,定义一个Person类,两个属性用private修饰,代表只有本类能访问,隐藏两个属性,但是对外提供获取修改两个属性方法

3. 多态
多态就是,同一个接口,使用不同实例来执行不同的操作。
存在的三个条件:

  • 继承
  • 重写
  • 父类指向子类对象Parent p = new Child();

四、关键字

  1. extends:继承,单继承
  2. implements:实现,可以多实现
  3. super:引用当前对象的父类,实现对父类成员的访问
  4. this:指向自己的引用
  5. final:最终,final修饰的类不能被继承,修饰的方法不能被重写
  6. native:native充当JAVA语言与除JAVA之外的其他语言编写的代码块或库之间的链接,这可能取决于您操作的机器。如果将native关键字应用于一个方法,那么这意味着该方法将通过JNI(JAVA native interface)使用其他语言(如C或C++)编写的本机代码来实现。
  7. throw/throws:用于抛出异常,throw在方法体内使用,throws在方法末尾处使用
  8. abstract:抽象的 ,可以用来修饰的结构:类、方法
  9. static:静态,静态对象不需要依赖任何对象就可以访问

五、抽象类和接口

抽象类的特点:

  1. abstract修饰类
  2. 不能被实例化
  3. 可以有抽象方法,也可以有普通方法,但是有抽象方法的类一定是抽象类,普通类不允许有抽象方法
  4. 如果非抽象类继承了抽象类,必须要实现抽象类内全部的抽象方法
  5. 抽象方法不能被static、final修饰

接口特点:
6. interface修饰类
7. 不能被实例化
8. 可以多实现
9. 接口内方法都是抽象方法,省略了public abstract,在java8后,接口里可以定义静态方法,静态方法方法体。

六、堆和栈

JVM在运行时会在内存中开辟一片内存区域

  JVM内存:
   1.   寄存器
   2.   本地方法区
   3.   方法区
   4.   栈内存
   5.   堆内存。

栈内存: 栈内存存储的都是局部变量,一般来说先加载函数才能进行局部变量的定义,所以方法先进栈,然后再定义变量,一旦离开变量作用域,就会被释放。

堆内存: 存储的是对象,凡是new建立的都是在堆中,堆中存放的都是实体(对象)。实体用于封装数据,对象内的成员变量也存储在堆中。如果一个数据消失,这个实体也没有消失,还可以用,所以堆是不会随时释放的,但是会被Java的垃圾回收机制不定时的回收。

七、拷贝

有时候需要对一个对象进行处理,但是又不想改变原有的对象,那么就要将对象拷贝成一个新的对象并操作新对象。

方法
实现Cloneable接口,重写clone方法
实现Serializable接口,序列化和反序列化,实现深克隆。
BeanUtils、apache和Spring都提供bean工具,都是浅克隆。
深克隆,既克隆基本类型变量,又克隆引用类型变量,浅克隆只克隆基本类型变量。
 

八、java常用类
Object、String、Math、Date
 

原文地址:https://www.jb51.cc/wenti/3279839.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐