1. 基本数据类型的包装类

byte   Byte

short   Short

int    Integer

long  Long

float  Float

double  Double

boolean   Boolean

char   Character

<------------------------------------------------------------------------------------------------->

2. 字符串和数值的互转

Integer integer = new Integer(10);

String str = "120";

//字符串转数值

int b = Integer.valueOf(str);//

int c = Integer.parseInt(str);//

//数值转字符串

String re =  integer.toString();

String re2 = 10+"";

String re3 = String.valueOf(10);

<------------------------------------------------------------------------------------------------->

3. 基本数据类型和包装类的区别

  1. 包装类提供了方法
  2. 初始值不一样,int  0,    Interger  null.

<------------------------------------------------------------------------------------------------->

4. 自动装箱和自动拆箱

Jdk1.5

Integer a = 10;//自动装箱(把基本数据类型装成对象)

// Integer a = new Integer(10);

Integer a = new Integer(10);

int b = a;//自动拆箱(把对象拆成基本数据类型)

<------------------------------------------------------------------------------------------------->

5. ==和equals()

== 比较基本数据类型,比较的是值

==比较引用数据类型,比较的是地址

equals()用来比较引用数据类型,如果没有重写,比较的是地址

如果重写了,那就按照重写的方式去比较。

比如String类重写了equals()方法,比较的是字符串内容

<------------------------------------------------------------------------------------------------->

6. 异常

对于程序运行出现的不正常情况,称为异常。

描述不正常情况的类为异常类,不同的异常对应了不同的异常类,

所有的异常类组成了异常体系。

异常体系结构

Throwable(可抛出的)

--Error:通常是值jvm的严重性问题,不可处理的,比如内存溢出。

--Exception:可处理的,非严重性问题

--checkedException(检查性异常)

在编译时会检测异常(比如文件找不到,中断异常)

必须要通过throws或try..catch处理

--uncheckedException(非检查性异常,运行时异常)

在运行时出现的异常(比如空指针异常,越界异常。。)

可处理,也可不处理

<------------------------------------------------------------------------------------------------->

7. 异常处理机制

trycatchfinallythrowthrows

try{

//可能出现异常的代码

}catch(){

//捕获异常,出现异常情况的处理代码

}finally{

//总是会执行的代码(不管是否 出现异常)

}

打开资源---》进行操作---》关闭资源

注意:可以写多个catch,先写子类,再写父类。代码出现异常,从第一个catch开始匹配,依次往下,直到某个catch匹配到。如果最终都没有匹配到,程序会中断。

throws  声明异常

public static void show() throws ArithmeticException,NullPointerException{

System.out.println(10/0);

}

throw  手动抛出异常

//手动抛出一个空指针异常

throw new NullPointerException();

<------------------------------------------------------------------------------------------------->

8. 自定义异常

如果自定义的异常是继承RuntimeException,自定义的异常是运行时异常

如果自定义的异常是继承Exception ,自定义的异常是检查性异常

<------------------------------------------------------------------------------------------------->

9. 日志:

 主要用来记录系统运行中一些重要操作信息

 便于监视系统运行情况,帮助用户提前发现和避开可能出现的问题,或者出现问题后根据日志找到原因

 日志分类

 SQL日志、异常日志、业务日志

<------------------------------------------------------------------------------------------------->

10. 如何使用log4j记录日志

1. 导包,将log4j相关jar包添加到项目中

2. 配置log4j.properties文件

3. 获取日志记录器,使用。

优先级从高到低分别是ERRORWARNINFODEBUG

在此处,如果优先级别设为info,那么使用debug方法打印的日志信息将不被输出

<------------------------------------------------------------------------------------------------->

11. 集合

List:有序可重复

--ArrayList:可变数组,在内存中是连续的空间保存元素。查询效率高,删除添加效率低

-- LinkedList:链表结构,由存储元素的节点连接而成,每个节点包含前一个节点的引用,和下一个节点的引用以及节点存储的值。当新节点插入时,只需要修改其中保持先后关系的节点引用即可。查询效率低,删除添加效率高

Set :无序不可重复

--HashSet:哈希表结构

如何保证唯一性的?

先调用两个对象的hashCode()方法,判断hashCode是否一样,如果不一样,两个对象都可以存入HashSet,如果一样,再调用equals方法比较,如果equals比较的结果是true,不存入。为false,则存入。

--TreeSet:二叉树结构

TreeSet:

注意:添加到treeSet集合中的对象必须具备比较能力(要实现Comparable接口);

TreeSet里保存的元素具有自然顺序。

如何保证唯一性?

通过compareTo()方法比较,比较是结果是0,表示一样,不存。比较结果是1,表示不一样,存入。

Map 键值对   key – value

键不可以重复,值可以重复

如果键是重复的,相当是修改这个键所对应的值。

HashMap  key和value都可以为null

<------------------------------------------------------------------------------------------------->

12. 泛型   jdk1.5

在定义类、接口、方法时,不局限地指定类型,而是让使用者传入类型。

泛型的好处:避免强转,把问题暴露在编译期

<? super T>  类型的下界(必须是T,或T的父类)

<? extends T> 类型的上界(必须是T,或T的子类)

Collections  是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

自定义一个泛型的类,属性有:未知类型的对象,保存未知类型对象的List

<------------------------------------------------------------------------------------------------->

13. 反射:

在运行状态中,对于任意一个类都知道这个类的属性和方法,都能够调用任意一个方法和属性,这种动态获取信息以及动态调用对象方法的功能就是java反射机制。

<------------------------------------------------------------------------------------------------->

14. Class 是一个类,描述类的类

一个类中有属性,方法,比如person类,animal类,这些都是不同的类,现在需要用一个类来描述这些类,这个类就是Class。

    Class  api

getDeclaredField(属性名) 获取指定属性

 

<------------------------------------------------------------------------------------------------->

15. io流

i:input    输入

o:output   输出

io流?输入输出流

用来处理设备之间 的数据传输

 

输入和输出是相对于内存而言。

输入流:将外设的数据读取到内存中。

输出流:将内存中的数据写到外设中。

 

java IO    java 提供api读写文件

 

字节流:操作字节,字节数组

字符流:操作字符,字符数组,字符串

字节流的两个顶层父类

InputStream  

OutputStream

字符流两个顶层父类

Reader    FileReader   BufferedReader

Writer     FileWriter   BufferedWriter

<------------------------------------------------------------------------------------------------->

16. 序列化与反序列化

序列化:将对象以字节的方式存到外设

ObjectOutputStream

反序列化:将存到外设的字节文件转成对象

ObjectInputStream

<------------------------------------------------------------------------------------------------->

16. 序列化与反序列化

序列化:将对象以字节的方式存到外设

ObjectOutputStream

反序列化:将存到外设的字节文件转成对象

ObjectInputStream

<------------------------------------------------------------------------------------------------->

17. File

Java.io.File类用来表示文件或目录 

功能:能获取文件或文件夹的信息,

对文件或文件夹操作。

获取信息:

file.getPath()  获取路径

file.getName()  获取名称

file.getParent()  获取目录,返回String

file.getParentFile() 获取目录,返回File

file.length()  获取文件大小,返回long

file.lastModified()  获取文件最后修改时间

判断:

file.exists() 判断是否存在

file.isFile() 判断是否是文件

file. isDirectory() 判断是否是文件夹

file. isHidden() 判断是否隐藏

 

创建:

file.createNewFile()  创建文件

file.mkdir() 创建文件夹  父目录必须要存在

file.mkdirs()创建文件夹,
父目录可以不存在,会连带父目录一起创建

 

 

删除:

file.delete() 删除文件或空文件夹

 

重命名:

file.renameTo(File)  重命名/剪切

 

 

列出

File[] files = File.listRoots()  列出可用的文件系统根。

File[] files = dir.listFiles() 获取指定文件夹下的所有文件和文件夹 返回的是File数组

String[] fs = dir.list()   获取指定文件夹下的所有文件和文件夹  返回String数组


1. 日志:

 主要用来记录系统运行中一些重要操作信息

 便于监视系统运行情况,帮助用户提前发现和避开可能出现的问题,或者出现问题后根据日志找到原因

 日志分类

 SQL日志、异常日志、业务日志

Java语法知识点2的更多相关文章

  1. Java语法知识点

    1. 特殊字符 a) \n   换行符 b)  \t   制表符 <--------------------------------------------------------------- ...

  2. Java 面试知识点解析(一)——基础知识篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  3. Java 面试知识点解析(四)——版本特性篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  4. Java 面试知识点解析(六)——数据库篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  5. Java 面试知识点解析(七)——Web篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  6. Java 基础知识点小结

    小知识点 所有的程序,都要定义在类里面: 异常 定义方法时,使用 throws 可以用来捕获方法体内没有捕获的异常,然后以 SomeException 抛出异常 java是解释型语言.java虚拟机能 ...

  7. Java基础知识点总结

    前言 本文主要是我之前复习Java基础原理过程中写的Java基础知识点总结.Java的知识点其实非常多,并且有些知识点比较难以理解,有时候我们自以为理解了某些内容,其实可能只是停留在表面上,没有理解其 ...

  8. Java入门知识点

    Java入门知识点   Java源代码的流程 Java程序由.java文件生成,通过JVM进行编译得到字节文件.class class HelloWorld { public static void ...

  9. JAVA基础知识点总结(全集)

    1.JAVA简介 1.1java体系结构:j2se,javaweb,j2ee 1.2java特点:平台无关(虚拟机),垃圾回收(使得java更加稳定) 1.3 JDK与JRE,JDK:java开发环境 ...

随机推荐

  1. #51nod上topcoder练习记

    好久没刷51nod了,又听说topcoder有很多好题.那么就来51nod上刷吧.(那个客户端搞得有点烦(看不懂)) [1366 贫富差距] 当图不连通的时候,答案为无穷大. 当图连通时,两个点之间的 ...

  2. [SDOi2012]Longge的问题(洛谷 2303)

    题目描述 Longge的数学成绩非常好,并且他非常乐于挑战高难度的数学问题.现在问题来了:给定一个整数N,你需要求出∑gcd(i, N)(1<=i <=N). 输入格式 一个整数,为N. ...

  3. python3 mqtt 添加用户名以及密码

    import paho.mqtt.client as mqtt client = mqtt.Client(client_id, transport='tcp') client.username_pw_ ...

  4. 写代码注意了,打死都不要用 User 这个单词

    阅读本文大概需要 4 分钟. 原文:http://t.cn/Eau2d0h 译文:http://21cto.com/article/2093 当你意识到你在项目开始时做的轻量.简单的设想竟然完全错了时 ...

  5. 软件工程1916|W(福州大学)_助教博客】个人总结作业(第12次)成绩公示

    1.作业链接 个人作业--软件工程实践总结作业 https://edu.cnblogs.com/campus/fzu/SoftwareEngineering1916W/homework/3316 2. ...

  6. jvm jdk jre 关系

    JDK : Java Development ToolKit(Java开发工具包).JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工 ...

  7. JAVA数学函数与常量

    在JAVA中,没有幂运算,因此需要借助于Math类的pow方法. double y = Math.pow(x,a) Math类提供了一些常用的三角函数: Math.sin Math.cos Math. ...

  8. AQS2--出队

    队列不卡死,一定要:前面节点变成头结点唤醒时候能够唤醒后面节点,依次类推. 设置前面节点=-1就是为了前面节点走的时候,唤醒自己. 正常没有阻塞节点,设置前面=-1,再旋转一次尝试获取锁,才阻塞.即使 ...

  9. Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-slave(二)

    一.说明 1.1 说明 前面介绍采用 Jenkinsfile + KubernetesPod.yaml 方式进行部署项目(Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-s ...

  10. Logstash测试的时候,报Error occurred during initialization of VM,Could not reserve enough space for object heap

    今天配置Logstash的时候,启动输入logstash ‐e 'input { stdin { } } output { stdout {} }'就开始报错了,Error occurred duri ...