Java自动装箱-拆箱机制究竟是什么

自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。 什么是自动装箱和拆箱 自动装箱就是Java自动将原始类型值转换成对应的对象,比如将int的变量转换成Integ…

0评论

JAVA内存结构解析

Java内存结构大体示意图: 程序计数器   程序计数器(Program Counter Register)是JVM中一块较小的内存区域,保存着当前线程执行的虚拟机字节码指令的内存地址。Java多线…

0评论

Java 数组

Java数组  数组是相同类型的变量按顺序组成的一种复合数据类型,我们称这些相同类型的变量为数组的元素或单元。数组通过数组名加索引来使用数组的元素。数组属于引用数据类型,创建数组需要经过声明数组和为…

0评论

Java精讲:生产者-消费者

本文概要 生产者和消费者问题是线程模型中老生常谈的问题,也是面试中经常遇到的问题。光在Java中的实现方式多达数十种,更不用说加上其他语言的实现方式了。那么我们该如何学习呢? 本文会通过精讲wait…

0评论

Java运算符

Java运算符 计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。 我们把运算符具体分为:算数运算符,比较运算符,逻辑运算符,位运算符,赋值运算…

5评论

Java语言版本以及语言特性

Java语言版本 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称。由James Gosling和同事们共同研发,并在1995年…

1评论

Java中的final修饰符

Java中的final修饰符 Java中final修饰符既可以修饰变量、方法,也可以修饰类。 用final修饰的变量一旦被初始化,就不能再修改。 用final修饰的方法不可被重写 用final修饰的…

0评论

Java中的this关键字

Java中的this关键字 this是一个在实例内部的引用。在实例内部指向实例本身,在实例内部指向实例属性。每一个实例都有自己的this。 this关键字的作用: this调用本实例中的属性(thi…

0评论

Java异常精讲

Java 异常处理 你将学到 Java中异常的捕获方法 throws/throw 和 finally 关键字 Java中常见的异常 Java中异常类层次结构 常见的异常错误的使用方式 自定义异常的方…

0评论

Java类和对象

Java类和对象 你将学到: 类和对象的概念是什么 Java中创建类和对象的方法 构造方法重载 类和对象的概念 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,…

0评论

Java条件语句精讲

Java条件语句 你将学习到: 1. if...else条件语句 2. switch 条件语句 if...else 语法 if 语句: if(布尔表达式) { //如果布尔表达式为true将执行的语…

2评论

Java集合精讲

集合(Collection) 集合的本质是存放大量数据的容器,作用与数组是一样的,用来保存大量相同类型的数据。集合这个容器基本上是不限定数量大小的。 集合本身在Java程序中就是一系列接口,类的组合…

2评论

Java循环精讲

> 1、Java循环体的用法 > 2、循环退出语句 **continue、 break、 return** > 3、常见的循环体的“坑” > 4、如何选择循环体

0评论

JAVA消除unchecked警告

当你使用范型的时候,可能会经常看到各种各样的编译器警告:未检查方法调用警告、未检查变量类型警告、未检查转换警告等等。很多未检查警告很容易被消除。

0评论

JAVA不要使用原始类型

从Java5开始引入范型。 在没有范型的时候,如果有人不小心将错误的类型加入到collection中,就会造成运行时的错误。 有了范型之后,你能告诉编译器,哪种类型被允许加入到collection 中,而且能在编译期间就发现错误。这个系列的文章会告诉你如何更优雅的使用范型。

0评论

JAVA源文件只包含一个顶层类

虽然Java编译器允许你在一个源文件中定义多个顶层类,但是你这么做也没有任何好处,反而会有一些明显的坏处。**主要的坏处是:可能会造成一个类有多种实现。**最终使用哪一种实现依赖于源文件被添加到编译器的先后顺序。

0评论

JAVA内部类优先设置成静态的

如果一个嵌套类需要在一个方法外部可见,或者太长以至于放在一个方法中不合适,那么应该使用一个成员类。如果没有成员类的对象都需要引用一个宿主类的对象,就将其设置成非静态的,否则设置成静态的。假设一个类在一个方法内部,如果你只需要一个这样的实例并且已经有可以表示这个类类型,那么将其设置成匿名类,否则将其设置成本地类。

0评论

Java接口仅仅定义类型

常量接口是对接口的不良用法。类使用的什么常量属于内部的实现细节。但是当类实现一个常量接口时,就会导致类的内部实现细节被暴漏到类导出的API中。对用户来说,类实现常量接口不但用处不大而且容易造成混乱。

0评论

Java接口的向后兼容

应该尽量避免为现有的接口添加默认方法,除非这是必要的,此时你应该认真思考添加的方法会不会对现有的接口实现造成不必要的影响。然而,在创建接口时添加默认方法的实现时很有用的,可以减轻接口实现的负担

0评论

Java接口优先于抽象类

接口是允许多种实现的定义类型最好的方法。如果你导出一个重要的接口,你应该为它提供一个骨架实现。在可能的范围内,你应该尽可能通过提供默认的接口方法实现,以便所有实现这个接口的类都可以调用。也就是说,对接口的限制通常要求骨架实现采用抽象类的形式。

0评论

Java继承的注意点

非final、不是为继承设计的、也没有很好的文档,这样的状态都是很危险的。当改变这样的一个类时,就会破坏继承于这些类的类。

0评论

Java组合代替继承

继承是强大的,但是它会造成很多问题,因为它会破坏封装性。它仅适合当子类和父类是is-a的关系时使用。

0评论

Java降低可变性

在不需要的情况下,不要为每一个getter方法写一个setter方法,**如果类可以做成不可变的,就尽量不要使它们可变**。不可变的类有很多的优点,只有一个缺点是在某些情况下可能有性能问题。

0评论

Java减少public属性

public的类不能暴漏可变对象给外部。即使是不可变对象也同样具有一定危害。然而,有时在一些设计中package-private或嵌套内部类中还是需要暴漏可变或不可变对象的。

0评论

Java降低可访问性

文章也上传到的 github (欢迎关注,欢迎大神提点。) 类和接口是Java语言的核心。他们是组成抽象的基本单元。Java语言提供了很多关于类和接口的特性,这一章节的内容帮助你使用这些特性来实现更…

0评论

最后的内容

不再加载页面

关闭菜单