java基础
成分sjz
路漫漫
展开
-
java基础(1)--数据类型和操作符
首先说一下感想 这是我第一个博客 也希望能将自己写博客长久的写下去 首先想对自己所学过java基础的知识做一个比较系统的知识总结,我学这部分知识主要是看的第一本书《java疯狂讲义》和第二本书《java编程思想》,所以所写的内容也就是我对于这两本书中知识点的总结,知识的顺序也是也是按照这两本书知识所罗列的顺序而来。希望通过总结知识点来讲自己的所学知识进行更加牢固的掌握。1 数据类型1.1java有...原创 2018-04-23 22:26:57 · 196 阅读 · 1 评论 -
java基础(12)----类型信息
(1)RTTI 与class对象RTTI是Run-Time Type Information的缩写,指运行时类型信息可以在程序运行时发现和使用。要理解RTTI在Java中的工作原理,首先必须知道类型信息在运行时是如何表示的。这项工作是由称为Class对象的特殊对象完成的,它包含了与类有关的信息。类是程序的一部分,每个类都有一个Class对象。每当编写并且编译了一个新类,就会产生一个Class对...原创 2018-05-30 16:42:34 · 212 阅读 · 0 评论 -
反射总结 转载
https://www.cnblogs.com/zhaoyanjun/p/6074887.html原地址反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。反射机制能做什么反射机制主要提供了以下功能:在运行时判断任意一个对象所属的类;...转载 2018-05-30 16:50:34 · 159 阅读 · 0 评论 -
java基础(14)---数组
泛型以后学习的更加深入了再来总结 先总结第16章数组。1 数组为什么特殊数组为什么特殊;数组与其他种类直接的区别有三方面:效率、类型和保存基本类型的能力。在java中,数组是一种效率最高的存储和随机访问对象引用序列的方式。数组就是一个简单的线性序列,这使得元素的访问非常快速,但是为这种速度所付出的代价是数组对象的大小被固定。并且在其生命周期中不可改变。2、数组是第一级对象对象数组保存的是引用,基本...原创 2018-05-30 18:12:41 · 107 阅读 · 0 评论 -
java基础(15)容器深入研究
1、 完整的容器分类方法List — AbstractList/ArrayList/LinkedList Set — AbstractSet/HashSet/LinkedHashSet/TreeSet Map — AbstractMap/HashMap/LinkedHashMap/TreeMap/WeakHashMap/IdentityHashMap2、填充容器addAll();和Genera...原创 2018-05-31 22:37:40 · 89 阅读 · 0 评论 -
深入理解java虚拟机----第十一章晚期优化
11.1 概述 在部分的商用虚拟机(Sun HotSpot、IBM J9)中,Java 程序最初是通过解释器(Interpreter)进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码” (Hot Spot Code)。为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译...原创 2018-07-30 02:44:42 · 323 阅读 · 0 评论 -
arrayList源代码
好久不写博客啦 最近一直忙着面试,昨天面试官问我读没读过arraylist的源代码 瞬间蒙蔽,今天总结一下,以前感觉源代码都是好高大上的东西,今天自己结合百度读啦一下,发现源代码也并不难,最近会吧jdk中的源代码自己总结一下。我用的是jdk1.7这篇博客只总结主要的 构造器 add get set等方法 remove iterator contains 其余的不去总结。有兴趣可以自己去...原创 2018-09-13 13:17:03 · 654 阅读 · 0 评论 -
java集合----hashset源代码
又看啦一下hashset源代码 大吃一惊 底层居然是hashmap 你能想的到 我相信第一次看的人 都会大吃一惊的。网上看到的 直接复制过来好啦。 去研究一下hashmap 其实hashset就是一个限制功能的hashmap。public class HashSet<E> extends AbstractSet<E> implements Set&...原创 2018-09-13 17:11:00 · 220 阅读 · 0 评论 -
java集合---hashmap
HashMap基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。HashMap的底层主要是基于数组和链表来实现的,它之所以有相当快的查询速度主要是因为它是通过计算散列码来决定存储的位置。H...原创 2018-09-13 20:03:37 · 120 阅读 · 0 评论 -
RMI
此处讲的是Java中的RMI,而不是通用意义上的RMI,关于通用的RMI可以参考分布式之RPC的协议以及错误处理 这篇文章。https://blog.csdn.net/lmy86263/article/details/72594760?utm_source=copy 原文地址一、Java RMI简介Java RMI用于不同虚拟机之间的通信,这些虚拟机可以在不同的主机上、也可以在同一个主...转载 2018-10-06 23:16:27 · 171 阅读 · 0 评论 -
Class.forName()与xxx.class的区别
https://blog.csdn.net/Terminator2015/article/details/52123388 原地址所有的类都是在对其第一次使用时,动态加载到JVM。当程序创建第一个对类的静态成员的引用时,就会加载这个类。这也证明了构造器也是类的静态方法,即使在构造器之前并没有static关键字。因此,使用new操作符创建类的对象也会被当作对类的静态成员的引用。因此Java程序在他开...转载 2018-05-30 15:54:19 · 4389 阅读 · 1 评论 -
java基础(11)---字符串
Java编程思想第四版读书笔记——第十三章 字符串想写一下发现了一篇写的很好的------直接拿过来用了https://blog.csdn.net/severusyue/article/details/51784228 这是原地址,感觉自己肯定总结不了这么好。字符串的操作是计算机程序设计中最常见的行为。关键词: StringBuilder ,StringBuffer,toString(),form...转载 2018-05-29 21:25:40 · 231 阅读 · 0 评论 -
java基础(5)---复用类
复用代码是java众多引入注目的功能之一。但要想成为极具革命性的语言,仅仅能够复制代码并对以加之改变是不够的,它还必须能够做更多的事情。在继承结构中,父类的内部细节对于子类是可见的。所以我们通常也可以说通过继承的代码复用是一种白盒式代码复用。(如果基类的实现发生改变,那么派生类的实现也将随之改变。这样就导致了子类行为的不可预知性;)组合是通过对现有的对象进行拼装(组合)产生新的、更复杂的功能。因为...原创 2018-05-10 23:35:00 · 178 阅读 · 0 评论 -
java基础(3)---初始化与清理
随着计算机的发展,“不安全”的编程方式已逐渐成为编程代价高昂的主因之一。 初始化和清理正是涉及安全的两个问题1用构造器确保初始化Java中有默认构造器,是无参构造器,所以如果必要,还是使用无参构造器。也有带参数的构造器,以便指定如何创建对象。构造器确保对象被创建的时候初始化,而且Java会在用户有能力操作对象之前自动调用了相应的构造器。 构造器命名规则:1)构造器采用与类相同的名称。2)“每个...原创 2018-05-06 20:43:51 · 121 阅读 · 0 评论 -
java基础(2)---控制执行流程
一般情况下,代码的执行按照从上到下的顺序,然而通过加入一些判断,循环和跳转语句,你可以有条件地执行特定的语句。接下来分三部分介绍Java的控制流语句,他们是判断语句(if-then, if-then-else, switch),循环语句(for, while, do-while)和跳转语句(break, continue, return)。1.true和false 所有条件语句都利用条件表达...原创 2018-04-29 00:57:21 · 96 阅读 · 0 评论 -
java基础(4)-----访问权限控制
访问控制(或隐藏具体实现)与“”最初的实现并不恰当“”有关。Java中为什么要设计访问权限控制机制呢?主要作用有两点:(1)为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分。(2)为了让类库设计者可用更改类的内部工作方式,而不必担心会对用户造成重大影响。 Java中的访问权限控制的等级,按照权限从大到小依次为:Public -&...原创 2018-05-07 21:23:09 · 288 阅读 · 0 评论 -
java基础(7)---接口
1、抽象类和抽象方法public abstract void f();创建抽象类是希望通过这个通用接口操纵一系列类。如果一个类包含大于等于一个抽象方法,那么这个类就是抽象类,必须用abstract关键字来限定这个抽象类。如果试图直接创建该抽象类的对象,编译器会报错。如果抽象类的子类没有为基类的抽象方法提供定义,那么这个导出类依旧是抽象类。抽象类也可以不包含任何抽象方法,单纯的用abstract...原创 2018-05-21 20:52:44 · 120 阅读 · 0 评论 -
java基础(10)----通过异常处理错误
java基本理念是:“”构造不佳的代码不能运行“”1、概念因为异常机制将保证能够捕获这个错误,所以不用小心翼翼的各种去检查。而处理错误只需要在一个地方完成,那就是 异常处理程序。只需要在异常处理程序中处理错误。2、基本异常异常情形是指阻止当前方法或作用域继续执行的问题。 3.捕获异常 3(1).try块:如果在方法内部抛出了异常,这个方法将在抛出异常的过程中结束。要是不希望方法就此结束,可...原创 2018-05-26 00:16:31 · 104 阅读 · 0 评论 -
java基础(8)---内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类。1 创建内部类class Circle { double radius = 0; public Circle(double radius) { this.radius = radius; } class Draw { //内部类 public void drawSahpe()...原创 2018-05-23 00:06:17 · 105 阅读 · 0 评论 -
java基础(6)---多态
面向对象语言中,多态是封装、继承之后的第三种基本特征。多态:消除类型之间的耦合关系(分离做什么和怎么做),基于继承的向上转型功能,允许同一种类型同一行为有不同的表现。8.1再论向上转型不管导出类的存在,编写的代码(方法)只是针对基类类型。不需要为每个导出类型都写各自的代码,这正是多态所允许的。8.2转机程序运行时接受的是基类类型,但是它如何知道具体类型是哪一个从而调用正确的方法呢?我们需要了解...原创 2018-05-16 21:41:47 · 71 阅读 · 0 评论 -
java基础(9)---持有对象
如果一个程序只包含固定数量的且生命周期都是已知的对象,那么这是个非常简单的程序1、泛型和类型安全的容器根据多态,集合类如果不使用泛型就会装任何类,因为所有类都是Object的子类,所以一个集合类的实例是可以装不同类的实例的。不过在取出这些实例时必须强制类型转换,不然会在编译时报错!看如下实例:import java.util.ArrayList;public class First { ...原创 2018-05-24 21:13:50 · 146 阅读 · 0 评论 -
java基础---注解
以前对注解理解不深 现在回过头来再来看一下注解发现学到了很多东西很多例子复制于https://www.cnblogs.com/huojg-21442/p/7239846.html小伙伴们。今天我们来说说注解、标志@ 。针对java不同版本来说,注解的出现是在jdk1.5 但是在jdk1.5版本使用注解必须继续类的方法的重写,不能用于实现的接口中的方法实现,在jdk1.6环境下对于继续和实现...转载 2018-12-30 15:08:48 · 153 阅读 · 0 评论