自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 判断一个数是不是2的阶次方数

思路:2的阶次方数二进制的形式首位都是1,比如8的二进制为1000,4的二进制为100,如果把这个数减去1,再与该数做与(&)运算,结果一定是全0.比如8-1=7 7的二进制为111, 8&7=0000 4-1=3,3的二进制为11,3&4=000所以我们可以通过这种判断一个数是不是2的阶次方数public class Demo { //从键盘输入的类 ...

2019-09-07 16:03:33 759

原创 写一个java应用程序,从键盘输入一个整数,然后输出他的平方值及立方值

public class Test1 { private static String s="";//定义从键盘输入数据的类 public static void input(){ BufferedReader bu=new BufferedReader(new InputStreamReader(System.in));//从键盘输入一行字符保存到字符串s中 ...

2019-08-21 15:58:36 9019 1

原创 java反射机制

在运行状态中,对于任意一个类都能知道这个类的所有属性和方法,对于任意一个对象,都能调用它的任意一个属性和方法,种种动态获取的信息以及动态调用对象的方法的功能称为java反射机制反射获取类具有三种方式:以获取people类型为例Classc1=Class.forName(“People”);Class c=People.class;People p=new People();Class...

2019-08-17 13:43:11 154

原创 对java内存空间的解释

java虚拟机在执行java程序的过程中会把它所管理的内存分为若干个不同的数据区域,这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁的,根据<<java虚拟机规范(第2版)>>的规定,java虚拟机所给管理的内存将会包括以下几个运行时数据区域:方法区和堆是由所有线程共享的数据区虚拟机栈和...

2019-08-15 17:02:03 480

原创 详解JVM垃圾回收机制

Java中引入垃圾自动回收机制,将对象中不再被使用的对象进行回收,所以垃圾回收主要作用于堆内存,由于GC操作需要消耗一定的资源和时间,Java在对对象的生命周期进行分析后,按照新生代、老年代的划分对垃圾进行回收.对新生代的对象的回收称为minor GC,对老年代的对象的收集称为Full GC,程序中调用System.gc()强制执行的GC为Full GC,不同的对象引用类型, GC会采用不同的方法...

2019-08-14 16:30:05 303

原创 java面试分享-------(四)

1.ArrayList和LinkedList的区别ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。ArrayList对于随机访问get和set的效率高, 对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动指针.ArrayList 的初始化大小是10, 1.5倍扩容, LinkedList没有初始化大小...

2019-08-13 16:48:54 125

原创 java面试分享-----(三)

7内部类有哪些?内部类有什么额外开销?Java内部类有静态内部类(static inner class):静态内部类是指被static修饰的内部类,它不能与外部类有相同的名字,不能访问外部类的普通成员变量,只能访问外部类中静态成员和静态方法,静态内部类的成员方法不能访问外部类的实例方法(非静态方法)成员(实例)内部类(member inner class):成员内部类中可以访问外部类的所有成...

2019-08-11 15:41:50 135

原创 练习题

class A{ public int i = method(); public static int j = method2(); public int k = 0; public A(){ System.out.println(1); } public int method(){ S

2019-08-09 16:34:25 259

原创 控制反转与依赖注入的关系

控制反转IoC(Inversion of Control):是面向对象编程的一种设计原则,可以用来减低计算机代码之间的耦合度,是轻量级spring框架的核心,传统模式是由代码直接操控程序,控制反转的概念就是由容器来操控程序之间的联系,控制权由应用代码转移到外部容器,反转就是控制权的转移,就比如孩子想吃苹果,于是告诉妈妈我回家想吃苹果,于是妈妈就帮孩子挑选,购买苹果,孩子回家给到孩子吃,孩子不用...

2019-08-07 20:26:58 687

原创 @Autowired和@Resource的区别?

区别@Autowired(注解是属于spring的)按byType(类型装配)自动注入依赖对象必须存在,如果要允许null值,可以设置它的required属性为false@Autowired(required=false),它也可以使用名称装配,配合@Qualifier注解@Resource(注解是属于J2EE的)默认按byName(名称装配)自动注入,也可以按类型装配@Resourc...

2019-08-07 20:13:06 557

原创 java面试题分享------(二

4. java多态的实现机制是什么多态指:同一方法名根据被调对象的不同实现了不同的行为。Java多态提供了静多态(编译期多态)和动多态(运行期多态)两种实现机制。静多态的条件是方法的重载,动多态的条件是继承,重写和向上造型重载:函数名相同;参数列表不同;同一个作用域,返回值,参数类型可以不同重写:函数名相同,参数列表相同,不同作用域,返回值参数类型相同向上造型:基类的引用,引用派生类的对象...

2019-08-04 15:14:16 116

原创 java面试题分享-----(一)

1.java对象的初始化顺序?静态变量à静态块à实例变量à实例块à构造方法在类继承关系中的初始化顺序:父类静态变量/静态块-à子类静态变量/静态块-à父类实例变量/实例块—à父类实例变量/实例块/构造方法----à子类实例变量/实例块/构造方法2.java类的加载过程是什么Java类的加载过程主要分为三个部分:加载,链接,初始化。其中链接又包括验证,准备,解析三个过程。加载:它是Java...

2019-08-04 13:57:59 647

原创 详解java设计模式之-----观察者模式

观察者模式—对象间的联动什么是观察者模式呢?首先,看一个故事“红灯停,绿灯行”,在日常生活中,交通信号灯装点着我们的城市,指挥着日益拥挤的城市交 通。当红灯亮起,来往的汽车将停止;而绿灯亮起,汽车可以继续前行。在这个过程中,交 通信号灯是汽车(更准确地说应该是汽车驾驶员)的观察目标,而汽车是观察者。随着交通 信号灯的变化,汽车的行为也将随之而变化,一盏交通信号灯可以指挥多辆汽车。...

2019-08-04 12:59:33 223

原创 java设计模式之----单例模式

在<<java设计模式>>一书中,给出的设计模式的一般定义如下:设计模式是一套被反复使用,多数人知晓的,经过分类编目,代码设计经验的总结,使用设计模式是为了可重用代码,让代码更容易被他人理解并且保证代码可靠性java设计模式中有23中经典的设计模式今天给大家介绍的是 单例模式,如果您发现了什么不足或者问题,希望能提出来,我会及时改正单例模式(Singleton Pa...

2019-08-02 15:55:44 182

原创 java中的四种访问限定修饰符

Java的四种权限:public :公共权限private,:私有权限protected:受保护权限default:默认权限由上图可知:java的四种访问限定修饰符中public:可以修饰类,构造方法,数据成员,方法成员可以被同一个类里面的其他类访问;可以被同一个包下的类访问;可以被不同包下的类访问;不管是同一包还是不同包下的子类也可以访问private:可以修饰构造方法...

2019-07-31 15:12:10 3917

原创 AVL树旋转图示

AVL树是平衡二叉树,本质上是一棵二叉查找树特点:它的左右两个子树的高度差绝对值不超过1,并且左右两个子树都是一棵平衡二叉树.插入操作AVL树不仅是一棵二叉查找树,它还有其他性质,按照一般二叉查找树的插入方式可能会破坏AVL树的平衡性,所以在插入结点时,为了保证AVL的平衡性,我们进行了旋转操作:左旋;插入的结点位于根结点的右子结点上右旋;插入的结点位于根结点的左子结点上...

2019-07-23 17:14:46 237

原创 二叉查找树(整理)

二叉查找树是二叉树的一种,每个结点拥有一个关键值key,其左子树上的结点关键值均小于它的根结点关键值,右子树上的结点关键值均大于它的根结点的关键值。可以高效的实现在树中进行插入,查找,删除数据的操作,二叉查找树中序遍历的结果一定是从小到大有序数列。1插入过程:如果树开始为空树,没有结点,则先定义一个头节点head,插入,然后依次插入左右孩子,以及双亲定义nodeprivate BSTNo...

2019-07-20 11:40:04 178

原创 (整理)关于二叉树的基础知识

任何一个可以用计算机求解的问题所需的计算时间都与其规模有关.问题的规模越小,解题所需的计算时间往往越少,从而也较容易处理.分治法设计思想:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之 递归算法就是由分治法设计思想产生的.一个直接或间接地调用自身的算法称为递归算法.一个使用函数自身给出定义的函数称为递归函数迭代是循环结构,递归是选择结构二叉树(Bina...

2019-07-16 16:36:48 274

原创 SQL关于数据库的和表的操作

因为老是在使用数据库时就得去找相关语句,就想把关于数据库和对表的操作的SQL语句稍微总结了一下,有错误希望大家指出首先 进入mysql后,创建一个数据库,使用语句:CREATE DATABASE 数据库名;要注意的是mysql中语句是使用‘;’来结束的,一段语句输入结束,mysql才会去执行该语句。这里的分号为英文形式。使用:SHOW DATABASES 数据库名; 语句来显示已...

2019-04-29 21:41:37 247

原创 数据库

数据库数据库(database)就是一个存储数据的仓库,为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效地组织和管理存储在数据库中的数据。一.数据存储的方式:人工管理阶段在计算机发展的早期,它的主要作用是科学计算,计算机存储设备还没有发展起来,数据主要是存储在纸带、磁带等介质上,或直接手工记录。这个阶段数据都是靠人工进行整理和保存。文...

2019-04-28 23:04:55 253

原创 java类型转换

最近整理笔记刚好到强转这一块,所以简单的写一下,有错误的希望大家可以指出整型,实型,字符型数据可以混合运算,运算时,不同类型的数据先转化为同一类型再运算自动转化类型要从低级往高级转 byte,short,char—>int—>long---->float---->doubleboolean 类型不能与整型进行转换转化过程中可能会导致溢出或损失精度,比如int ...

2019-04-22 22:42:47 328

原创 基本类型的范围

因为自己老是记不住这些取值范围,就根据网上学到的知识,编译了几种基本类型的取值范围,包装类,字节数,位数,不足的地方希望大家能够指出.public class PrimitiveTypeTest {public static void main(String[] args) {//byteSystem.out.println("基本类型:byte 二进制位数: "+Byte.SIZE);...

2019-04-21 14:44:12 290

原创 Java多线程创建方式以及线程的状态

线程:线程是CPU分配处理器时间的基本单元.线程的创建可以通过三种方法:1 通过继承Java里面的java.lang.Thread类;class Worker extends Thread {public int c = 50;public Worker() {}public Worker(String name) { super(name);}@Override...

2019-03-14 20:40:33 129

原创 排序总结

`排序总结1 冒泡排序方法:java中的冒泡排序是通过比较相邻两个元素之间的数值大小,把较大的数冒到后面去,通过创建循环使程序跑起来,每次循环固定一个格子,直到所有的数之间都有序,形成一个从小到大的有序排列的数组时间复杂度:O(n^2)空间复杂度:O(1)稳定性:稳定.2 选择排序方法:把最小的值选择到最前面.从第一次开始,每次从待排序中选择最小的数和当前i所在位置的值进行比较,把...

2019-01-11 13:55:10 355

原创 多态

多态分为静多态和动多态静多态指编译期多态:方法的重载重载满足的条件:函数名相同,参数列表不同,同一个作用域动多态指运行期多态,条件是要有继承,方法重写,向上造型(基类的引用引用派生类的对象)重写满足的条件:父子关系(作用域不同),方法名相同,参数列表相同public class Animal{public void eat(){System.out.println(“吃饭”);}...

2019-01-02 17:24:25 113

原创 JAVA中泛型

通过泛型可以定义类型安全的数据结构,而无须使用实际的数据类型,泛型类和泛型方法具备可重用性,类型安全性和高效性.泛型的定义Java中可以定义泛型类,泛型方法,泛型接口,泛型的定义通过泛型参数来定义,参数类型包含在&amp;lt;&amp;gt;中,参数类型用Java标识符来表示,例如大写字母T,E等.泛型类 用于封装非特定数据类型的操作(链接列表,哈希表,堆栈,对列等)设计泛型类需要考虑的事项:哪...

2019-01-02 16:07:34 230

原创 类加载

类加载机制java虚拟机将java源代码(.java文件)编译生成java字节码文件(.class文件)储存在磁盘上,之后类加载器读取字节码文件,转化成java.lang.Class对象),有了Class对象,java虚拟机就可以利用反射方法创建自己的对象.类加载器如何识别字节码文件?用javap–verbose文件名查看字节码文件格式内容.其中存在MD5checksum标识,作用是进行文...

2018-11-21 22:46:45 150

原创 继承里的 super

super的几个作用1用于从派生类访问基类的成员。2 派生类要调用基类的构造方法 super() ,super()只能在派生类的构造方法中调用,位于方法首行,基类有参构造方法。3 调用基类已被其他方法重写的方法4 访问基类的数据成员: super.成员变量 super.成员方法。子类调用父类的方法,有访问权限的成员变量super()调用父类无参构造方法public class anim...

2018-11-20 15:59:22 249

原创 抽象类及抽象方法

抽象类及抽象方法如果一个类中没有包含足够的信息来描绘一个具体的对象,这种类被定义为抽象类.含有抽象方法的类为抽象类。抽象类的特征;1 不能new,实例化对象2 一个类只能继承一个抽象类3 抽象类的修饰符不能是private(如果父类的构造函数是私有的,那么子类不能继承此父类。如果抽象类的构造函数为私有的,那么抽象类也不可能有子类了)抽象类:abstractclass 类名()抽象方...

2018-11-18 23:18:01 870

原创 this的两个

this关键字this的两个用法:a. 指向当前对象表示对当前对象的引用 this.name=nameb.调用自身的构造方法 this.类方法()如果我们希望在方法的内部获得对当前对象的引用,就可以使用this关键字,this只能在方法内部使用,表示“对调用方法的那个对象”的引用。public class Car{String name; int year;void start(...

2018-11-01 23:58:06 120

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除