自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

山不转的博客

山不转水转,水不转我转

  • 博客(10)
  • 收藏
  • 关注

原创 Java设计模式之装饰器模式

1、什么是装饰器模式?装饰器模式的核心是要有一个共通接口,然后共通接口又分成两大类实现。一种实现是被修饰者,它实现接口的主体功能。另一种是修饰者,它相当于一个饰品的功能,不改变被修饰者的实现,只是在原有实现上再加上点“修饰”。最后是构建者,它负责将被修饰者与“饰品”就是修饰者组装起来。装饰器模式涉及到的四个角色:共通接口 被修饰者:它实现共通接口,是主体功能。 饰品:这也实现共通接...

2018-12-20 18:16:41 667

原创 请教Java中的Lambda表达式有什么用?

1、问题不明白Java为什么要引入Lambda表达式。只有在很少的情况下用它来替换匿名类可能会少那么三、四行代码,可是,我们成千上万的代码都写了,谁会在乎这么一点呢?并且,Lambda表达式限制条件比匿名类多,匿名类它是类,类是面向对象语言的核心,它比Lambda表达式功能强多了。Lambda与性能也没有什么关系。想提高性能要优化算法、充分利用计算资源,与Lambda表达式有什么关系呢?...

2018-12-17 20:56:39 2386 1

原创 Java构建器多态问题

示例代码如下:package com.zhangxf.test;class BaseClass { BaseClass() { System.out.println("BaseClass.BaseClass()"); show(); } void show() { System.out.println("BaseClass.show()"); }}public...

2018-12-11 16:22:48 188

原创 Java内部类的高级用法

1、内部类链接到外部类普通内部类可以访问外部类的一切,包括私有成员与方法。示例:public class Tree { class MyRoot implements Interface.Root { @Override public void show() { System.out.println("Root of " + NAME); } } private...

2018-12-11 15:00:50 508

原创 Java内部类典型用法

将一个类的定义嵌套在另一个类内部就是内部类(内部接口也可以),另一个类就是外部类。形式上很简单,关键问题是内部类有什么用,它能解决什么别人解决不了的问题?在Java编程思想第四版中文版中有如下说法“内部类对我们非常有用,因为利用它可以对那些逻辑上相互联系的类进行分组,并可控制一个类在另一个类里的可见性”。1、利用内部类实现分组先看“因为利用它可以对那些逻辑上相联系的类(或者接口)进行分...

2018-12-10 12:35:32 664 1

原创 Java中的接口

1、前言首先明确一点,本文接下来描述的接口,遵守的是Java的默认行为,比如在定义接口的方法时,没有加任何特定的关键字,这个时候java会默认为方法加上public访问控制符,在为接口定义成员时,Java会自动为其加上public static final修饰。在默认行为下,接口看起来会更纯粹。在JAVA最新的版本中,接口已经不像刚开始时那样单纯了。现在的版本中,可以通过default关键...

2018-12-07 16:30:21 128

原创 Java中的继承与多态

封装、继承、多态是面向对象语言的三大特性。多态本质上是将接口与实现细节分离,在具体的程序设计中是实现高扩展性的关键。特别是一些框架类型的项目,框架定义接口并提供默认的接口实现,开发者也可以提供自己的接口实现,从而实现框架的高可扩展性。1、多态与向上转型向上转型(upcasting),就是将派生类当成基类使用,这个理论上很容易理解。因为基类拥有的方法、成员,派生类一定也有,派生类中的方法、成...

2018-12-07 12:24:15 264

原创 Java中回收资源的方法

1.回收对象占用的内存对于内存的回收,JAVA与C++不同。在C++中,对象占用的内存,其回收是明确无误的。在栈中分配的对象,当代码的运行离开对象的作用域时,系统自动调用对象的析构函数,然后回收内存。对于在堆中为对象分配的内存,即使离开分配时的作用域,系统也不回收内存,只有开发者调用如delete这样的操作符时,系统才会调用对象的析构函数,然后回收内存。如果发开者忘记调用delete回收堆中分...

2018-12-06 21:13:36 2638

原创 Java中的访问控制符

Java中的访问控制符有四种:public、protected、default、private。它们的作用如下表:public表示全部开放,所有地方的类、子类都可以直接访问、覆盖,这个很好理解。protected表示受保护,记住一点,对于同一个包内的类,包括派生出的子类,它相当于public。另外对于包外的派生出的子类,它也相当于public。defalut就是没有修饰符,被称为友...

2018-12-06 19:55:56 250

原创 Java中的final关键字

final的字面意思是不变的,可以修饰类中的成员、类中的方法、类中方法的参数,类。为什么要使用final呢?这个问题,在不同的场景下有不同的原因。1、用final修饰类中的成员final修饰类中的成员又分为两种大的情况,一种是普通成员,另一种是对象成员。1.1.修饰普通成员修饰普通成员又分成三种情况,第一种是编译时赋值,第二种载入时赋值,第三种构建时赋值。1.1.1.编译时赋值...

2018-12-06 19:30:33 260

空空如也

空空如也

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

TA关注的人

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