Java
我是一只计算鸡
The people who are crazy enough to think they can change the world are the ones who do.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
五分钟带你了解码点与代码单元
1 Unicode Unicode俗称万国码,在20世纪80年代开始启动统一工作时,人们认为两个字节的代码宽度足以对世界上各种语言的所有字符编码,并有足够的空间留给未来扩展。在1991年发布了Unicode1.0,当时仅占用了65536(两个字节)个代码值中不到一半的部分。 奈何中华文化博大精深,使得Unicode字符超过了65536个。现在,16位的char类型已经不能满足描述所有Unicode字符了。2 码点(Code Point) 码点是指与一个编码表中的某个字符对应...原创 2020-06-15 18:05:46 · 2154 阅读 · 3 评论 -
【Java】源码(小朋友,你是否有很多问号)理解神器之javap
在学习Java的过程中,少不了查看JDK文档,了解相关源码。但是有的源码看起来就不是很好理解比如,一个和注解相关的源码小朋友,你是否有很多问号?为什么我就是看不懂这个源码这换谁谁第一次也看不懂这代码。所以这时候一个强大的工具javap就登场了。javap:javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指...原创 2020-04-01 20:20:59 · 387 阅读 · 4 评论 -
【Java】path与classpath的区别
path:Windows系统执行命令时要搜寻的路径。classpath:Java在编译和运行时要找的class所在的路径。原创 2019-09-10 23:44:34 · 238 阅读 · 0 评论 -
【Java】持有对象
如果一个程序只包含固定数量的且生命周期都是已知的对象,那么这是一个非常简单的程序。通常,程序总是根据运行时才知道的某些条件去创建对象。在此之前,不会知道所需对象的数量,甚至不知道确切的类型。为解决这个普遍的编程问题,需要在任意时刻和任意位置创建任意数量的对象。所以,就不能依靠创建命名的引用来持有每一个对象:Mytype aReference;一、泛型和类型安全的容器当你制定了某个类...原创 2019-08-07 20:41:07 · 289 阅读 · 0 评论 -
【Java】内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类。一、创建内部类创建内部类的方式——把类的定义置于外围类的里面。如果想从外部类的非静态方法之外的任意位置创建某个内部类对象,那么必须具体地指明这个对象的类型:outerClassName.InnerClassName。二、链接到外部类当生成一个内部类对象时,此对象与制造它的外围对象之间就有了一种联系,所以它能访问其外围对象的...原创 2019-08-05 17:14:21 · 186 阅读 · 2 评论 -
【Java】接口
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法。一、抽象类和抽象方法如果我们只有一个抽象类,那么该类的对象几乎没有任何意义。我们创建抽象类是希望通过这个通用接口操纵一系列类。因此,抽象类只是表示了一个接口,没有具体的实现内容;因此创建一个抽象类对象没有什么意义,并且我们可能还想阻止使用者这样做。通过让抽象类中的所有方法都产生错误,就可以实现这个目的。但是这样做会将错误信息延...原创 2019-08-03 10:29:25 · 171 阅读 · 0 评论 -
【Java】 复用类
一、组合语法假设你需要某个对象,它要具有多个String对象,几个基本类型数据,以及另一个类的对象。对于非基本类型的对象,必须将其引用置于新的类中。toString( ) :每一个非基本类型的对象都有一个toString ( )方法,而且当编译器需要一个String而你却只有一个对象时,该方法便会被调用。初始化引用,可以在代码中的下列位置进行:a :在定义对象的地方。这意味着它们总...原创 2019-07-20 10:18:04 · 161 阅读 · 0 评论 -
【Java】 多态
一、在面向对象的程序设计语言中,多态是继数据抽象和继承之后的第三种基本特征。二、转机1: 方法调用绑定1.1 前期绑定:将一个方法调用同一个方法主体关联起来被称作绑定。若在程序执行前期绑定(如果有的话,由编译器和连接程序实现)。1.2 后期绑定:运行时根据对象的类型进行绑定。后期绑定也叫做动态绑定或运行时绑定。如果一种语言想实现后期绑定,就必须具有某种机制,以便在运行时能判断对...原创 2019-07-23 18:50:53 · 169 阅读 · 0 评论 -
【Java】 静态初始化 + 实例初始化
一、静态初始化//: initialization/StaticInitilization.java// Specifying initial values in a class definitionclass Bowl{ Bowl(int marker){ System.out.println("Bowl (" + marker + ")"); } ...原创 2019-07-11 18:16:24 · 697 阅读 · 0 评论 -
【Java】构造器 + 重载
一、涉及基本类型的重载 1:如果传入的数据类型(实际参数类型)小于方法中申明的形式参数类型,实际数据类型就会被提升。char型略有不同,若果无法找到恰好接受 char 参数的方法,就会把 char 直接提升至 int 型。 2:方法接受较小的基本类型作为参数,如果传入的实际参数较大,就得通过类型转换来执行窄化转换。如果不这样做,编译器就会报错。 ...原创 2019-07-10 19:26:28 · 200 阅读 · 0 评论 -
【Java】Java GC机制
Java有垃圾回收器负责回收无用对象占据的内存资源。但是也有例外情况,由于垃圾回收器只知道释放那些经由new分配的内存,如果你的对象不是使用new获得了一块“特殊”的内存区域,那么它就不知道该如何处理对象的这块“特殊”内存。 finalize() 方法: 为了应对上述情况,Java 允许在类中定义一个名为 finalize() 的方法,它的工作原理”假定“ 是这样的:一旦垃圾回收器准备好...原创 2019-07-10 20:14:24 · 357 阅读 · 0 评论 -
【Java】无法从静态上下文引入非静态方法
//: access/IceCream.java// Demonstrates "private" keyword.import sun.security.provider.Sun;class Sundae{ private Sundae() {} static Sundae makeASundae() { return new Sundae(); ...原创 2019-07-13 21:07:11 · 1056 阅读 · 0 评论 -
【Java】访问权限控制
public、protected、private这几个Java访问权限修饰词在使用时,是置于类中每个成员的定义之前的,无论它是一个域还是一个方法。每个访问权限修饰词仅控制它所修饰的特定定义的访问权。如果不提供任何访问权限修饰词,则意味着它是包访问权限1:包访问权限 默认访问权限没有任何关键字,但通常是指包访问权限 (有时也表示成为friendly)。这就意味着当前的包中的所有其他类对那个...原创 2019-07-13 20:58:18 · 134 阅读 · 0 评论 -
【intelliJ IDEA 配置】 intelliJ IDEA 安装教程 (jdk + 环境变量 + 代码颜色、字体)
学习Java的第一步,打造高颜值Java集成开发环境。笔者选用intelliJ IDEA 来学习Java,第一步,配置Java Interpreter(解释器),下载安装 jdk + 配置环境变量下载 jdk 链接 :https://www.oracle.com/technetwork/java/javase/community/index.html或者直接点下面这个链接:http...原创 2019-07-09 12:18:15 · 2187 阅读 · 0 评论
分享