java进阶
sun10081
这个作者很懒,什么都没留下…
展开
-
Java进阶01 String类
之前的JAVA基础系列中讨论了Java最核心的概念,特别是面向对象的基础。在Java进阶中,我将对Java基础进行补充,并转向应用层面。大部分编程语言都能够处理字符串(String)。字符串是有序的字符集合,比如"Hello World!"。在Java中,字符串被存储为String类对象。调用字符串对象的方法,可以实现字符串相关的操作。String类包含在java.lang包中。这个包会在Java...转载 2018-05-12 21:56:12 · 111 阅读 · 0 评论 -
Java进阶07 嵌套类(内部类)
到现在为止,我们都是在Java文件中直接定义类。这样的类出现在包(package)的级别上。Java允许类的嵌套定义。这里将讲解如何在一个类中嵌套定义另一个类。 嵌套到现在为止,我们都是在Java文件中直接定义类。这样的类出现在包(package)的级别上。Java允许类的嵌套定义。这里将讲解如何在一个类中嵌套定义另一个类。 嵌套内部类Java允许我们在类的内部定义一个类。如果这个类是没有stat...转载 2018-05-23 00:46:04 · 225 阅读 · 0 评论 -
Java进阶10 内存管理与垃圾回收
整个教程中已经不时的出现一些内存管理和垃圾回收的相关知识。这里进行一个小小的总结。Java是在JVM所虚拟出的内存环境中运行的。内存分为栈(stack)和堆(heap)两部分。我们将分别考察这两个区域。栈许多语言利用栈数据结构来记录函数调用的次序和相关变量。在Java中,JVM中的栈记录了线程的方法调用。每个线程拥有一个栈。在某个线程的运行过程中,如果有新的方法调用,那么该线程对应的栈就会增加一个...转载 2018-05-26 10:00:25 · 381 阅读 · 0 评论 -
Java进阶09 事件响应
在GUI中,我们看到了如何用图形树来组织一个图形界面。然而,这样的图形界面是静态的。我们无法互动的对该界面进行操作。GUI的图形元素需要增加事件响应(event handling),才能得到一个动态的图形化界面。元素, 事件, 监听器我们在GUI一文中提到了许多图形元素。有一些事件(Event)可能发生在这些图形元素上,比如:点击按钮拖动滚动条选择菜单Java中的事件使用对象表示,比如Action...转载 2018-05-26 09:54:48 · 937 阅读 · 0 评论 -
Java进阶06 容器
Java中有一些对象被称为容器(container)。容器中可以包含多个对象,每个对象称为容器中的一个元素。容器是用对象封装的数据结构(data structure)。 充满梦想的容器不同的数据结构有不同的组织元素的方式,也可以有不同的操作。根据具体实施的不同,数据结构的操作效率也各有差别。Java中的容器也是这样。我们要选择适当的容器,以应对变化的需求。数组数组(array)是最常见的数据结构。...转载 2018-05-22 00:02:24 · 185 阅读 · 0 评论 -
Java进阶03 IO基础
计算机最重要的功能是处理数据。一个有用的计算机语言需要拥有良好的IO功能,以便让未处理的数据流入程序,让已处理的数据流出。与其他语言相比,Java的IO功能显得复杂。在其他语言中,许多IO功能(比如读取文件),是被封装好的,可以用一两行程序实现。在Java中,程序员往往需要多个层次的装饰(decoration),才能实现文件读取。相对的复杂性带来的好处是IO的灵活性。在Java中,程序员可以控制I...转载 2018-05-15 00:19:24 · 97 阅读 · 0 评论 -
Java进阶05 多线程
多线程多线程(multiple thread)是计算机实现多任务并行处理的一种方式。在单线程情况下,计算机中存在一个控制权,并按照顺序依次执行指令。单线程好像是一个只有一个队长指挥的小队,整个小队同一个时间只能执行一个任务。单线程 在多线程情境下,计算机中有多个控制权。多个控制权可以同时进行,每个控制权依次执行一系列的指令。多线程好像是一个小队中的成员同时执行不同的任务。多线程传统意义上,多线程是...转载 2018-05-20 23:10:27 · 107 阅读 · 0 评论 -
Java进阶04 RTTI
运行时类型识别(RTTI, Run-Time Type Identification)是Java中非常有用的机制,在Java运行时,RTTI维护类的相关信息。多态(polymorphism)是基于RTTI实现的。RTTI的功能主要是由Class类实现的。Class类Class类是"类的类"(class of classes)。如果说类是对象的抽象和集合的话,那么Class类就是对类的抽象和集合。每...转载 2018-05-20 22:39:52 · 97 阅读 · 0 评论 -
Java进阶02 异常处理
程序很难做到完美,不免有各种各样的异常。比如程序本身有bug,比如程序打印时打印机没有纸了,比如内存不足。为了解决这些异常,我们需要知道异常发生的原因。对于一些常见的异常,我们还可以提供一定的应对预案。C语言中的异常处理是简单的通过函数返回值来实现的,但返回值代表的含义往往是由惯例决定的。程序员需要查询大量的资料,才可能找到一个模糊的原因。面向对象语言,比如C++, Java, Python往往有...转载 2018-05-14 00:07:02 · 122 阅读 · 0 评论 -
Java进阶08 GUI
GUI(Graphical User Interface)提供了图形化的界面,允许用户以图形的方式与系统进行互动。在GUI推广之前,用户通常要以文本命令的方式来控制计算机。GUI直观的将计算机的功能呈现给用户,降低了用户使用计算机的门槛。苹果和微软是GUI方面的先驱(虽然他们都一定程度上抄袭了Xerox),GUI也为这两位PC王者带来了丰厚的市场回报。早期Mac GUIGUI需要操作系统和硬件的支...转载 2018-05-23 12:28:48 · 243 阅读 · 0 评论