自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 重走Java基础:Collection接口源码解析

请对应上一篇博客的源码查看 请点击:打开!Collection接口源码. Java集合的学习路径 这篇博客主要通过从源码开始重新来学习Collection,来加深对Java集合的认识。我们都知道Collection接口是List、Set、Queue接口的父类接口,那么如果我们了解了Collection接口,也就明白了这些集合的共性,后续再继续学习各个接口的实现类也就只需要各自实现类的特性就行了。因...

2018-12-04 22:03:06 216 1

原创 重走Java基础:Collection源码

Collection接口(源码) /* * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * ...

2018-12-04 19:48:26 225

原创 重走Java基础:集合篇-开场白

从本文开始,我们正式开始集合篇!

2018-12-04 19:37:58 162 1

原创 写在下一阶段之前,面向对象篇暂时告一段落。

面向对象的一些知识暂时告一段落,从本文开始,进入java集合阶段~

2018-11-29 19:24:42 167

原创 重走Java基础:面向对象-static关键字

static关键字 1. 为什么需要static? 当在定义类的时候,类中都会有相应的属性和方法。而属性和方法都是通过创建本类对象调用的。当在调用对象的某个方法时,这个方法没有访问到对象的特有数据时,方法创建这个对象有些多余。可是不创建对象,方法又调用不了,这时就会想,那么我们能不能不创建对象,就可以调用方法呢?可以的,我们可以通过static关键字来实现。static它是静态修饰符,一般用来修饰...

2018-11-27 21:28:55 163

原创 重走Java基础:面向对象-final关键字

final关键字 1. 为什么需要final? 我们都知道Java有三大特性:封装、继承、多态。Java的继承特性提高了代码的复用性,方便开发。继承关系的出现,子类将会拥有父类的属性和功能。如果有些类描述完之后,不想被继承,或者说有些类中的部分功能是固定的,不想让子类重写。但是由于java的继承特性,当子类继承了这些特殊类之后,就可以对其中的方法进行重写,那怎么解决呢? 要解决上述的这些问题,需要...

2018-11-27 20:24:00 144

原创 重走Java基础:面向对象-构造器、this关键字、super关键字(重要内容、坑多)

一、构造方法 我们考虑这样的一个场景: 首先,我们考虑以下代码: public class Person { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } ...

2018-11-21 16:23:44 157

原创 重走Java基础:面向对象-成员方法(值传递、可变参、方法重载)

成员方法 一. 方法的概述 类中的成员方法分为两种:静态成员方法和非静态成员方法。因此方法是类或对象的行为特征的抽象,从功能上看,方法类似于传统结构化程序设计里的函数,只不过Java里的方法不能独立存在,所有的方法必须定义在类中。方法在逻辑上要么属于类,要么属于对象。 二. 方法的所属性 有static修饰的方法属于类,否则属于对象。 三. 方法的调用 因为Java中的方法不能独立存在,它必须属于...

2018-11-21 13:38:21 281

原创 重走Java基础:面向对象-多态及其常见问题

一、多态概述 多态是继封装、继承之后,面向对象的第三大特性。 现实事物经常会体现出多种形态,如学生,学生是人的一种,则一个具体的同学张三既是学生也是人,即出现两种形态。 Java作为面向对象的语言,同样可以描述一个事物的多种形态。如Student类继承了Person类,一个Student的对象便既是Student,又是Person。 Java中多态的代码体现在一个子类对象(实现类对象)既可以给这个...

2018-11-20 21:33:10 258

原创 重走Java基础:面向对象-接口(interface)

接口 1. 接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”。 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成。这样将功能的定义与实现分离,优化了程序设计。 请记住:一切事物均有功能,即一切事物均有接口。 2. 接口的定义 与定义类的class不同,接口定义时需要使用interface关键字。 定义接口所在的仍为...

2018-11-16 15:02:20 133

原创 重走Java基础:面向对象-抽象类(abstract)

抽象类,什么是抽象类? 1. 抽象类的产生 当编写一个类时,我们往往会为该类定义一些方法,这些方法是用来描述该类的功能具体实现方式,那么这些方法都有具体的方法体。 但是有的时候,某个父类只是知道子类应该包含怎么样的方法,但是无法准确知道子类如何实现这些方法。比如一个图形类应该有一个求周长的方法,但是不同的图形求周长的算法不一样。那该怎么办呢?** 分析事物时,发现了共性内容,就出现向上抽取。会有这...

2018-11-16 14:17:00 169

原创 深入Java虚拟机——类加载器(未完成)

类加载器(ClassLoader()) Java虚拟机与程序的生命周期 一般在如下几种情况下,java虚拟机将结束生命周期 执行了System.exit()方法; 程序正常执行结束; 程序在执行中出现了异常或错误而异常终止; 由于操作系统出现错误而导致Java虚拟机进程终止。 ClassLoader()类加载器 类加载器的主要作用:用于加载class文件的工具。我们都知道我们写的任何程序都是从...

2018-11-16 09:32:21 110

原创 重走Java基础:面向对象以及常见问题

问:类与对象? 问:为什么static修饰的成员不能直接访问没有static修饰的成员? 问:对象内存模型以及类的各个成员的内存分配 package cn.itcast.demo02; public class Car { String color; int count ; public void run(){ int x=1; /*for(int i = 0 ; i ...

2018-11-14 21:32:09 2463 6

原创 JDBC回顾

JDBC概述 == JDBC,Java Connectivity:Java数据库连接== JDBC是一种用于执行SQL语句的JavaAPI; JDBC可以为多种关系型数据库体提供统一的访问入口; JDBC由一组Java工具类和接口组成。 JDBC原理 JDBC核心类(接口) JDBC中的核心类有:DriverManager、Connection、Statement,和ResultSet! ...

2018-11-14 16:53:07 155

原创 关于JVM方法区和运行时常量池

方法区 同 Java 堆一样,方法区也是全局共享的一块内存区域 方法区的作用是存储 Java 类的结构信息,当我们创建对象实例后,对象的类型信息存储在方法堆之中,实例数据存放在堆中;实例数据指的是在 Java 中创建的各种实例对象以及它们的值,类型信息指的是定义在 Java 代码中的常量、静态变量、以及在类中声明的各种方法、方法字段等等;同时可能包括即时编译器编译后产生的代码数据。 JVMS 不...

2018-10-17 23:02:28 2215

原创 关于JVM堆和栈(2)

以上为我之前看到的关于jvm内存比较清晰的划分 JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method) 栈区: 每个线程包含一个栈区,栈中只保存方法中(不包括对象的成员变量)的基础数据类型和自定义对象的引用(不是对象),对象都存放在堆区中; 每个栈中的数据(原始类型和对象引用)都是私有的,其他栈不能访问。 栈分为3个部分:基本类型变量区、执行...

2018-10-17 22:50:05 109

转载 关于JVM堆与栈(1)

堆和栈的区别 功能不同 栈内存用来存储局部变量和方法调用。 而堆内存用来存储Java中的对象。无论是成员变量,局部变量,还是类变量,它们指向的对象都存储在堆内存中。 共享性不同 栈内存是线程私有的。 堆内存是所有线程共有的。 异常错误不同 如果栈内存或者堆内存不足都会抛出异常。 栈空间不足:java.lang.StackOverFlowError。 堆空间不足:java.lang...

2018-10-17 22:26:42 125

原创 重走Java基础——(3)JVM内存分析之基本数据类型的值传递及引用类型的地址传递

重走Java基础——(3)JVM内存分析之基本数据类型的值传递及引用类型的地址传递 基本数据类型的值传递 package lee; public class Method { static void change(int x){ System.out.println("第一次x的值:"+x); x = 100; System.out.prin...

2018-09-29 14:41:14 257

原创 重走Java基础——(2)JVM内存分析之堆的数组初始化及对象初始化

重走Java基础——(2)JVM内存分析之堆的数组初始化及对象初始化 数组初始化 首先还是基于代码来分析: package lee; public class Method { public static void main(String[] args) { int[] ages = new int[] {20,30,40}; System.out.prin...

2018-09-29 13:33:44 260

原创 重走Java基础——(1)程序运行时JVM内存分析

重走Java基础——(1)JVM内存分析 JVM内存的划分 JVM将内存主要划分为以下五个空间: 方法区 方法区存:又叫静态区,存放所有的class和static变量。方法区中包含的都是在程序中永远唯一的元素。 虚拟机栈 虚拟机栈:执行引擎没调用一个函数时,就为这个函数创建一个栈帧,并且加入虚拟机栈。换个角度说,每个函数从调用到执行结束,其实是对应一个栈帧的入栈和出栈。栈是一种数据结构,特点...

2018-09-29 12:43:42 169

X2D-20230309-BOSCH.rar

X2D-20230309-BOSCH.rar

2023-04-28

空空如也

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

TA关注的人

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