
Java基础
文章平均质量分 60
pcwl1206
这个作者很懒,什么都没留下…
展开
-
【搞定Java基础】之 i++ 和 ++i 详解
目 录:一、i++ 和 ++i 的基本概念二、i++ 和 ++i 的实现原理三、i++ 和 ++i 在使用时的一些坑3.1、i = i++ 导致的结果“异常”3.2、多线程并发引发的混乱一、i++ 和 ++i 的基本概念在几乎所有的命令式编程语言中,必然都会有 i++ 和 ++i 这种语法。有些语言中 i++ 和 ++i 既可以作为左值又可以作为右值,笔者专门测试了一...转载 2018-12-08 13:15:50 · 3611 阅读 · 0 评论 -
【搞定Java基础】之集合类面试题整理
博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信:pcwl_Java 一起交流秋招面试经验,可获得博主的秋招简历和复习笔记。因为集合类在Java基础知识中是非常重要的,也是面试中最常问到的,设计的问题也比较多,因此单独拿出来做面试题的整理,方便自己复习,也希望给看到此篇文章的你带来一定的帮助。文章内容均来自于网络,平时看到总结不错的题目,就收集在此。持续更新......原创 2018-12-11 11:43:58 · 576 阅读 · 0 评论 -
【搞定Java基础】第1篇:Java 语言的三大特性:封装、继承、多态
目录一、封装二、继承2.1 构造器2.2 protected 关键字2.3 向上转型2.4 谨慎继承三、多态3.1 多态的实现3.2 经典实例。一、封装本文转发自:http://cmsblogs.com/?p=41封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分...转载 2019-01-17 17:00:14 · 1253 阅读 · 0 评论 -
【搞定Java基础】第2篇:Java 的八大基本数据类型
本文转发自:https://blog.youkuaiyun.com/u014266877/article/details/543748671. Java的简单类型及其封装器类Java基本类型共有八种,基本类型可以分为三类,字符类型 char,布尔类型 boolean 以及 数值类型 byte、short、int、long、float、double。数值类型又可以分为整数类型 byte、short、...转载 2019-01-18 10:05:44 · 319 阅读 · 0 评论 -
【搞定Java基础】第3篇:Java 中的常量池:字符串常量池、class 常量池、运行时常量池 【解惑文章】
本文转发自:https://blog.youkuaiyun.com/zm13007310400/article/details/77534349这几天在看 Java 虚拟机方面的知识时,看到了有几种不同常量池的说法,然后我就去 优快云、博客园等上找资料,里面说的内容真是百花齐放,各自争艳,因此,我好好整理了一下,将我自认为对的理解写下来与大家共同探讨:在 Java 的内存分配中,总共 3 种常量池:...转载 2019-01-18 10:30:13 · 222 阅读 · 0 评论 -
【搞定Java基础】第4篇:Java 中的 String 类详解 【解惑篇】
本文转发自:1、https://blog.youkuaiyun.com/justloveyou_/article/details/525564272、https://blog.youkuaiyun.com/justloveyou_/article/details/60983034本文目录:一、Java 内存模型与常量池二、常量与变量三、String 类的定义与基础四、String 的不可变性...原创 2019-01-18 22:35:59 · 516 阅读 · 0 评论 -
【搞定Java基础】第5篇:Java 中的四舍五入
本文转发自:http://cmsblogs.com/?p=54四舍五入是我们小学的数学问题,这个问题对于我们程序猿来说就类似于 1 到 10 的加减乘除那么简单了。在讲解之间我们先看如下一个经典的案例:public static void main(String[] args) { System.out.println("12.5的四舍五入值:" + Math.round(12.5))...转载 2019-01-18 22:51:19 · 251 阅读 · 0 评论 -
【搞定Java基础】第6篇:final 关键字
本文转发自:http://cmsblogs.com/?p=80本文目录:一、 final 数据二、 final方法三、 final类四、 final参数五、final 与 static在程序设计中,我们有时可能希望某些数据是不能够改变的,这个时候 final 就有用武之地了。final 是 Java 的关键字,它所表示的是“这部分是无法修改的”。不想被改变的原因有两个:...转载 2019-01-18 23:07:09 · 264 阅读 · 0 评论 -
【搞定Java基础】第7篇:抽象类和接口
本文转发自:Java 的抽象特性:抽象类与接口深度解析本文目录:一. 抽象二. 抽象类三. 接口四. 接口与抽象类的区别要点:抽象类 接口 抽象类与接口的区别一. 抽象对于面向对象编程来说,抽象是它的四大特征之一。在 Java 中,可以通过两种形式来体现 OOP 的抽象:接口 和 抽象类。接口和抽象类为我们提供了一种将接口与实现分离的更加结构化的方法。二....转载 2019-01-18 23:31:38 · 174 阅读 · 0 评论 -
【搞定Java基础】第8篇:Java 中的 == 、equals 、hashCode 的区别与联系
本文转发自:Java 中的 ==, equals 与 hashCode 的区别与联系本文目录:一、概述二、关系操作符 ==三、equals 方法四、hashCode 方法五、小结这里再推荐阅读另外一篇文章:重写equal()时为什么也得重写hashCode()之深度解读equal方法与hashCode方法渊源一、概述1、概念1、== : 该操作符生成的是一...转载 2019-01-19 11:14:50 · 278 阅读 · 0 评论 -
【搞定Java基础】第9篇:Java 中值传递与引用传递的详解
本文转发自:https://blog.youkuaiyun.com/javazejian/article/details/51192130Java 的值传递和引用传递在面试中一般都会都被涉及到,今天我们就来聊聊这个问题,首先我们必须认识到这个问题一般是相对函数而言的,也就是 Java 中的方法参数,那么我们先来回顾一下在程序设计语言中有关参数传递给方法(或函数)的两个专业术语:按值调用(call b...转载 2019-01-19 15:12:38 · 1020 阅读 · 1 评论 -
【搞定Java基础】第10篇:Java 中的位运算详解
本文转发自:https://blog.youkuaiyun.com/javazejian/article/details/51181320一、 相关基础概念在开始 Java 位运算的知识之前,我们先来了解几个基础的概念,机器数,真值,原码,反码,补码。1.机器数我们知道无论是代码还是数值,在计算机中最后都转换成以二进制的形式存在的,而一个数值在计算机中的二进制表示形式,就是这个数的机器数。...转载 2019-01-19 16:02:25 · 537 阅读 · 0 评论 -
【搞定Java基础】第11篇:Java 中的 static 关键字
本文转发自:http://cmsblogs.com/?p=61一、static 代表着什么在 Java 中并不存在全局变量的概念,但是我们可以通过 static 来实现一个“伪全局”的概念,在 Java 中 static 表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块。Java 把内存分为栈内存和堆内存,其中栈内存用来存放一些基本类型的变量、数组和对象...转载 2019-01-19 16:24:50 · 175 阅读 · 0 评论 -
【搞定Java基础】第12篇:Java 泛型详解
本文转发自:https://blog.youkuaiyun.com/justloveyou_/article/details/52420071本文目录:一. 引子 二、泛型基础三. 通配符及泛型的逆变和协变四.编译器如何处理泛型?五. 类型擦除六. 泛型带来的问题及解决方法七. 小结一. 引子一般的类和方法,只能使用具体类型:要么是基本类型,要么是自定义类型。如果要编写...转载 2019-01-19 19:51:51 · 607 阅读 · 1 评论 -
【搞定Java基础】第13篇:Java 类型信息(Class对象)与反射机制
本文转载自:https://blog.youkuaiyun.com/javazejian/article/details/70768369本文目录:1、深入理解 Class 对象1.1、RRTI 的概念以及 Class 对象作用1.2、Class 对象的加载及其获取方式1.2.1 Class 对象的加载1.2.2 Class.forName 方法1.2.3 Class 字面常...转载 2019-01-20 12:11:03 · 319 阅读 · 0 评论 -
【搞定Java基础】第14篇:Java 枚举类型(Enum)
本文转发自:https://blog.youkuaiyun.com/javazejian/article/details/71333103本文目录:1、理解枚举类型1.1、枚举的定义1.2、枚举实现原理1.3、枚举的常见方法2、枚举与 Class 对象3、枚举的进阶用法3.1、向enum类添加方法与自定义构造函数3.2、关于覆盖 enum 类方法3.3、enum 类中定...转载 2019-01-20 18:54:53 · 886 阅读 · 0 评论 -
【搞定Java基础】第15篇:Java 注解(@Annotation)
本文转发自:https://blog.youkuaiyun.com/javazejian/article/details/71860633本文目录:1、理解Java注解2、基本语法2.1、声明注解与元注解2.2、注解元素及其数据类型2.3、编译器对默认值的限制2.4、注解不支持继承2.5、快捷方式2.6、Java 内置注解与其它元注解3、注解与反射机制4、运行时注解...转载 2019-01-20 21:47:01 · 446 阅读 · 0 评论 -
【搞定Java基础】之创建对象的5种方法
创建对象的5种方法今天来聊一聊在Java创建对象的几种方法。在项目里面,可能你经常使用new创建对象,或者就是把创建对象的事情交给框架(比如spring)。那么,除了new以外,你还知道几种创建对象的方法?下面来看看这5种创建对象的方法:1、使用new关键字;2、Class类的newInstance()方法;3、Constructor类的newInstance()方法;4、O...转载 2018-11-25 09:35:20 · 1109 阅读 · 0 评论 -
【搞定Java基础】面试题整理
博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信一起交流秋招面试经验。面向对象的三大特性继承:一般只能单继承,内部类可以实现多继承、接口可以多继承封装:访问权限控制public-->protected-->package-->private多态:编译时多态:体现在向上转型和向下转型,通过引用类型判断调用哪个方法(静态分派---->...原创 2018-11-22 15:37:19 · 364 阅读 · 0 评论 -
JAVA的四类八种基本数据类型
先说明两个词汇的基本概念:bit (位):位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为“0”或“1”。byte (字节):字节是计算机存储容量的基本单位,一个字节由8位二进制数组成。在计算机内部,一个字节可以表示一个数据或者一个英文字母,但是一个汉字需要两个字节表示。1B=8bit 1Byte=8bit1KB=1024Byte(字节)=8*1024bit1MB=1024KB1GB...原创 2018-06-21 21:28:23 · 22356 阅读 · 0 评论 -
关于Java字符串替换“/”斜杠的方法
博主秋招提前批已拿百度、字节跳动、拼多多、顺丰等公司的offer,可加微信:pcwl_Java一起交流秋招面试经验,可获得博主的秋招简历和复习笔记。今天在将字符串“/”替换成“-”时一直不能成功,原因就是String类是不可变的。失败代码:String b = "20-5331200000-001-981/B018"; if(b.contains("/")){ b...原创 2018-07-10 00:25:31 · 7006 阅读 · 0 评论 -
【转载】Java IO完全总结
转载一篇对IO讲解比较全面的博客:Java IO讲解大全转载 2018-07-05 23:02:14 · 197 阅读 · 0 评论 -
时间类型:Date类、DateFormate类、Calendar类
一、Date类:package 常用的时间类;import java.util.Date;public class DateTest { //类Date表示特定的瞬间,精确到毫秒 /* * Date类常用的方法: * 构造方法: * public Date():返回当前时间 * public Date(long date):返回指定毫秒值的日期对象 * 普通方法:...原创 2018-07-06 23:20:36 · 1803 阅读 · 0 评论 -
String、StringBuffer、StringBuilder和StringTokenizer
Java语言有4个类可以对字符或者字符串进行操作,分别是:Character、String、StringBuffer和StringTokenizer,其中Character用于单个字符的操作,String用于字符串操作,属于不可变类,而StringBuffer也是用于字符串操作的,不同之处在于StringBuffer属于可变类。一、String和StringBuffer的比较区别:1、St...原创 2018-07-14 22:13:49 · 306 阅读 · 0 评论 -
【转载】负数的二进制表示方法
负数的二进制表示方法转载 2018-07-20 20:09:53 · 644 阅读 · 0 评论 -
【数组】之排序详解
先推荐一篇博客:Java的八大排序算法说明:本案例中采用的都是从小到大的排序方式。排序的概念:排序是将一群数据,依次按照指定的顺序进行排列的过程。排序是数据处理中一种很重要的运算,同时也是很常用的运算,一般数据处理的25%时间都在进行排序。简单的说,排序就是把一组记录(元素)按照某个域的值的递增(由小到大)或者递减(由大到小)的次序重新排列的过程。排序的分类:(1)内部排序:指...原创 2018-07-22 09:27:28 · 496 阅读 · 0 评论 -
【数组】之查找详解
在java中常用的查找方法有两种:顺序查找和二分法查找(又叫折半查找)。一、顺序查找基本思想:顺序查找算法,从数组中的第0个位置到数组结束逐个的与给定的目标进行匹配,如果匹配到即返回位置,查找数组中所有的值都没有匹配上说明没找到即返回-1。public static int sequenceSearch(int[] arr, int key) { for (int i = 0;...原创 2018-07-22 10:06:57 · 291 阅读 · 0 评论 -
【数组】之翻转详解
数组翻转其实就是将数组的头角标和尾角标元素进行位置的置换,然后让头角标自增,尾角标自减。当头角标<尾角标的时候才能进行置换操作。public static void reverseArray(int[] arr){ int temp = 0; for(int start = 0, end = arr.length-1; start < end; start++,en...原创 2018-07-22 10:32:37 · 654 阅读 · 2 评论 -
【数组】之二维数组常见操作
二维数组的实质上存储的就是一维数组。二维数组的定义:数组类型[ ] [ ] 数组名 = new 数组类型[一维数组的个数][每一个一维数组中元素的个数]示例: int [ ][ ] arr = new int[3][4]arr.length=3:二维数组的大小a[0].length=4:每一个一维数组的大小一、遍历二维数组public class Trave...原创 2018-07-22 11:22:24 · 1826 阅读 · 0 评论 -
抽象类详解
1、抽象类定义:当描述一个类的时候,如果不能确定其功能函数如何定义,那么该类就可以定义为抽象类,不能确定的功能函数要描述为抽象函数。比如:动物叫,狗是旺旺叫,猫是喵喵叫,而羊是咩咩叫......所以在动物类里无法定义“叫”这个功能函数,所以该方法需要使用抽象方法,再在继承动物类的具体子类里根据自己的情况再去实现。2、抽象类的特点:(1)含有抽象函数的类一定是抽象类,但是抽象类不一定有抽...原创 2018-07-22 19:52:41 · 864 阅读 · 0 评论 -
多态详解
多态:一个对象的多种状态。例如,老王可以是老师,儿子,父亲等等身份。几个知识点:1、当父类和子类具有相同的非静态成员变量,那么在多态下访问的是父类的非静态成员变量;当父类和子类具有相同的静态成员变量,那么在多态下访问的是父类的静态成员变量。所以:父类和子类具有相同的成员变量,多态下访问的是父类的成员变量。2、当父类和子类具有相同的非静态方法(就是被子类重写的父类非静态方法),多态下访问...原创 2018-07-22 22:08:11 · 312 阅读 · 0 评论 -
Java多线程概述
转载几篇总结不错的多线程相关的博客:Java多线程一Java多线程二Java多线程三转载 2018-08-18 16:54:54 · 609 阅读 · 0 评论 -
Java中锁的相关知识点
收藏几篇关于锁的不错博客:1、Java锁(一)2、Java锁(二)转载 2018-08-19 20:47:13 · 647 阅读 · 0 评论 -
String对象在内存中的表现
字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。1、创建字符串的方式有两种:String str1 = "直接赋值法";String str2 = new String("通过new关键字创建");2、这两种创建字符串对象的方式有什么区别?先看个例子:public class Test { p...原创 2018-08-23 19:14:28 · 1368 阅读 · 2 评论 -
Java正则表达式
先推荐一篇博客文章:Java正则化正则表达式:其实是一种规则,有自己特殊的应用,其作用就是针对字符串进行操作。正则:就是用于操作字符串的规则,其中这些规则使用了一些字符来表示。正则表达式的符号:正则表达式常用的功能有:匹配验证、查找、切割、替换等:先讲解两个正则的对象:正则对象:Pattern 和匹配器:Matcher用法范例:String regEx =...原创 2018-08-23 20:10:23 · 172 阅读 · 0 评论 -
Java 中 Scanner 类常用方法总结
本文转自:https://blog.youkuaiyun.com/Megustas_JJC/article/details/68960433一、Scanner 简介Java 5 添加了 java.util.Scanner 类,这是一个用于扫描输入文本的新的实用程序。它是以前的 StringTokenize r和 Matcher 类之间的某种结合。由于任何数据都必须通过同一模式的捕获组检索或通过使用一个...转载 2019-04-17 20:35:06 · 718 阅读 · 0 评论