▬▬▬▬▬【Java入门】
李阿昀
昀,三尺微命,一介书生。只当穷且益坚,不坠青云之志!
展开
-
Java语言基础(二)——函数与数组
Java语言基础函数函数的定义 函数就是定义在类中的具有特定功能的一段独立小程序。函数也称为方法。 函数的格式:修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2, ... ){ 执行语句; return 返回值;}返回值类型:函数运行后的结果的数据类型。参数类型:是形式参数的数据类型。形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。原创 2016-12-01 19:53:22 · 1351 阅读 · 0 评论 -
泛型基础
泛型概述泛型是JDK1.5版本以后出现的新特性。它用于解决安全问题,是一个类型安全机制。 概念说完之后,我们来看看Java是如何引入泛型的。在JDK1.4版本之前,容器什么类型的对象都可以存储,但是在取出时,需要用到对象的特有内容时,这时需要做向下转型。比如下面的程序:public class MyGenericDemo { public static void main(String[]原创 2017-01-05 23:45:19 · 1051 阅读 · 2 评论 -
Java集合框架——Map
MapMap与Collection的不同Map与Collection在集合框架中属并列存在Map存储的是键值对Map存储元素使用put方法,Collection使用add方法Map集合没有直接取出元素的方法,而是先转成Set集合,在通过迭代获取元素Map集合中键要保证唯一性总结:Map是一个双列集合,一次存一对(键值对),而且要保证键的唯一性。Map集合中的常用方法Map集合中的常用方法原创 2017-01-07 23:35:30 · 1934 阅读 · 1 评论 -
常用API(一)——String、StringBuffer与基本类型包装类
String关于String这个特殊类,我到现在都还没搞明白,我觉得可能主要是由于没有搞懂JVM的内存结构引起的,但还是对其进行以下记录。字符串是一个特殊的对象。字符串一旦初始化就不可以被改变。String str = "abcd"; 以上这句代码的意思就是——JVM一启动,字符串就已经开始存储了,存储在了方法区中的常量池当中。这里还有一个说烂了的面试题:对于以下代码String str =原创 2017-01-09 18:04:35 · 1607 阅读 · 2 评论 -
常用API(二)
SystemSystem类用于描述系统一些信息,该类中的方法和属性都是静态的。out:标准输出流,默认对应的设备是显示器。in:标准输入流,默认的设备是键盘。因为Properties是HashTable的子类,也就是Map集合的一个子类对象,那么可以通过Map的方法取出该集合的元素。该集合中存储的都是字符串,没有泛型定义。以下代码用于获取系统属性信息:Properties prop = Sys原创 2017-10-13 17:38:26 · 1268 阅读 · 1 评论 -
Java IO流(一)
IO(Input Output)流的概述下面给出IO流的基本概述,这样可以对IO流有一个宏观上的基本了解。IO流用来处理设备之间的数据传输。Java对数据的操作是通过流(系统资源)的方式。Java用于操作流的对象都在java.io包中。流按操作数据分为两种:字节流与字符流。流按流向分为:输入流,输出流。虽如此,但我对IO流有一个自己的认识。IO流是一门用于处理设备上的数据的技术,此设备包原创 2017-10-13 22:34:55 · 1274 阅读 · 0 评论 -
Java IO流(二)
IO流常用基类字节流的抽象基类: InputStream OutputStream字符流的抽象基类:Reader Writer注意:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀的。例如,InputStream的子类——FileInputStream,Reader的子类——FileReader。字节流字节流的基本操作与字符流类同,但它不仅可以操作字符,还可以操作其他媒体文件。原创 2017-10-14 02:10:16 · 947 阅读 · 0 评论 -
Java IO流(三)
本篇文章主要围绕字符编码展开,为了能够更好地讲述这一主题,我将从字节流操作中文数据开始。字节流操作中文数据假设编写有如下程序,代码贴出如下:public class ReadCNDemo { public static void main(String[] args) throws IOException { writeCNText(); } public st原创 2017-10-14 22:03:47 · 867 阅读 · 0 评论 -
Java IO流(四)
上一篇文章中已经介绍完了字符流的两个缓冲区对象——BufferedWriter和BufferedReader,而缓冲区的原理我们并没搞明白,本文就来揭示其正面目了。缓冲区的原理——临时存储数据的方式,减少了对设备操作的频率,提高了效率,其实就是将数据临时缓存到了内存(数组)中。下面我们就来分别模拟BufferReader类的read()方法缓冲区实现和其readLine()方法缓冲区实现。原创 2017-10-16 01:48:45 · 1001 阅读 · 1 评论 -
第一讲 你应该了解这些简单的计算机基础知识
计算机软件计算机软件是使用计算机过程中必不可少的东西,计算机软件可以使计算机按照事先预定好的顺序完成特定的功能。计算机软件按照其功能划分为系统软件与应用软件:系统软件 DOS(Disk Operating System)、Windows、Linux、Unix、Mac、Android、IOS等。应用软件 Office、QQ、迅雷、快手等。软件开发软件即一系列按照特定顺序...原创 2018-03-05 00:06:35 · 4660 阅读 · 1 评论 -
第二讲 Java语言概述
计算机语言在了解Java语言概述之前,我们得知道什么是计算机语言。语言是人类进行沟通交流的各种表达符号,方便人与人之间进行沟通与信息交换。那什么是计算机语言呢?人与计算机之间进行信息交流沟通的一种特殊语言。计算机语言中也有字符、符号等等。常见的计算机语言如C、C++、C#、Java等。计算机软件都是用各种计算机语言编写的。最底层的叫机器语言,它由一些0和1组成,可以被某种电脑直...原创 2018-03-22 21:36:15 · 2350 阅读 · 1 评论 -
第三十八讲 I/O流——File类
前言:从这一讲开始,我们走进I/O流的世界,领略该体系中繁多的对象。I/O流这一块在Java基础中所占的比例还是蛮大的,所以,硬着头皮也要啃下它!少年,出发吧! 设备(比如说硬盘)上的数据,最常见的存储表现形式是文件(即File),所以这一讲中,我们学习一下文件的基本操作。File类的概述文件和目录路径名的抽象表示形式,用于表示一个文件或文件夹,并提供了一系列操作文件或文件夹的方法。...原创 2018-04-25 22:17:34 · 917 阅读 · 0 评论 -
多线程(四)
多线程的学习真的接近尾声了,真幸运,走到这步蛮不容易的,总觉得应该多写点什么,算了吧!还是记录下有关多线程方面的知识点吧!停止线程如何停止线程呢?须知stop()已经过时,那就只有一种了,即run()结束。其原理——线程任务通常都有循环,因为开启线程就是为了执行需要一些时间的代码。只要控制住循环,就可以结束run方法,就可以停止线程了。那如何控制循环呢?很简单啦,只须弄个标记(定义变量)即可。 例原创 2017-10-09 22:32:55 · 652 阅读 · 1 评论 -
Java语言基础(一)
Java语言基础组成关键字关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词。 特点:关键字中所有字母都为小写。 用于定义数据类型的关键字 class interface byte short int long float double char boolean void 用于定义数据类型原创 2016-11-29 00:34:40 · 1925 阅读 · 2 评论 -
多线程(三)
多线程间的通信本文继续接着讲解多线程,这儿会涉及到多线程的高级部分——多线程间的通信。 多线程间的通信其实就是多个线程都在处理同一个资源,但是处理的任务却不一样。最经典的案例就是生产者和消费者的案例了,下面我就来演示该案例。单个生产者和消费者我将采用循序渐进的方式来演示单个生产者和消费者的案例,以供大家参考。首先,我们可能会写出这样的案例代码,如下:// 描述资源class Res{原创 2017-10-08 23:34:55 · 941 阅读 · 1 评论 -
初识面向对象
面向对象概念理解面向对象面向对象是相对面向过程而言面向对象和面向过程都是一种思想面向过程强调的是功能行为面向对象将功能封装进对象,强调具备了功能的对象面向对象是基于面向过程的面向对象的特点是一种符合人们思考习惯的思想可以将复杂的事情简单化将程序员从执行者转换成了指挥者(即从过程的执行者,转换成了对象的指挥者)完成需求时: 先要去找具有所需的功能的对象来用如果该对象不存在,那么原创 2016-12-05 23:26:49 · 1002 阅读 · 0 评论 -
面向对象——继承
继承继承的概述多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承单独的那个类即可。多个类可以称为子类,单独这个类称为父类或者超类。子类可以直接访问父类中的非私有的属性和行为。 对于父类中私有的部分,子类对象是无法直接访问的。通过extends关键字让类与类之间产生继承关系,如class SubDemo extends Demo{}例如,原创 2016-12-14 23:04:49 · 951 阅读 · 0 评论 -
Java集合框架——Collection
集合类为什么出现集合类? 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。数组和集合类同是容器,有何不同? 数组虽然也可以存储对象,但长度是固定的;集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。集合类的特点 集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。集合框架的构成及分类原创 2016-12-28 23:58:17 · 1501 阅读 · 0 评论 -
面向对象——多态
多态多态定义多态:可以理解为事物存在的多种体现形态。 例如:人:男人,女人动物:猫,狗猫这个对象对应的类型是猫类型:猫 x = new 猫();,同时猫也是动物中的一种,也可以把猫称为动物:动物 x = new 猫();。动物是猫和狗等具体事物中抽取出来的父类型。 本文从以下几个方面介绍多态:多态的体现——父类的引用指向了自己的子类对象。即父类的引用也可以接收自己的子类对象多态的前提——原创 2016-12-15 20:42:17 · 1042 阅读 · 0 评论 -
复习反射
有一段时间没有接触反射了,Java Web学的越深,深刻认识到反射的重要性,所以今天抽空来复习一下反射,记录如下。类加载器类的加载当程序要使用某个类时,如果该类还未被加载到内存中,则系统(JVM)会通过加载,连接,初始化三步来实现对这个类进行初始化,也即一个类的加载步骤。加载 就是指将class文件读入内存,并为之创建一个Class类型的对象。任何类被使用时系统(JVM)都会建立一个Class类原创 2017-02-25 00:55:16 · 1169 阅读 · 0 评论 -
内省
内省了解JavaBean内省对应的英文单词为IntroSpector,它主要用于对JavaBean进行操作,JavaBean是一种特殊的Java类,主要用于传递数据信息,这种java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。如果一个Java类中的一些方法符合某种命名规则,则可以把它当作JavaBean来使用。 问:一个JavaBean可以当做普通Java类来使用吗?一个普通Ja原创 2017-02-25 23:48:00 · 615 阅读 · 0 评论 -
Java概述
dos命令行中常见的命令dir:列出当前目录下的文件以及文件夹md:创建目录(即文件夹) 例,C:\>md kkk(在C盘下创建了一个名为kkk的文件夹)rd:删除目录(必须保证该目录是空的) 例,C:\>rd kkk(在C盘下删除了一个名为kkk的文件夹) 如果目录不是空的,一定要删除该目录,则方法为:(举例说之,目录为C:\abc\op\1.txt,删除目录op) C:\abc>原创 2016-11-27 01:00:19 · 1214 阅读 · 0 评论 -
面向对象——异常
异常:就是程序在运行时出现的不正常情况。 异常的由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述,并封装成对象。异常其实就是java对不正常情况进行描述后的对象体现。异常的体系对于问题的划分有两种:一种是严重的问题,一种是非严重的问题。对于严重的,java通过Error类进行描述(通常出现重大问题如:运行的类不存在或者内存溢出等)。对于Error一般不编写针对性的代码原创 2016-12-27 00:52:35 · 1006 阅读 · 0 评论 -
多线程(一)
进程和线程的概述进程就是应用程序在内存中分配的空间,也可理解为一个正在执行中的程序。每一个进程执行都有一个执行顺序,该顺序就是一个执行路径或者叫一个控制单元。线程就是进程中负责程序执行的执行单元,也可理解为进程中的一个独立的控制单元。线程在控制着进程的执行。多线程多线程的概述一个进程中至少有一个线程在负责该进程的运行。如果一个进程中出现了多个线程,就称该程序为多线程程序。多线程解决的问题多线程原创 2017-10-08 01:59:13 · 1815 阅读 · 0 评论 -
多线程(二)
线程安全问题这里以简单的卖票程序为例开始本文的讲解,通过运行该卖票程序可以发现有可能打印出0、-1、-2等错票,这就表明多线程的运行出现了安全问题。产生的原因可归纳为两点:线程任务中有处理到共享的数据。线程任务中有多条对共享数据的操作。一个线程在操作共享数据的过程中,其他线程参与了运算,造成了数据的错误。解决办法:只要能保证多条操作共享数据的代码在某一时间段被一条线程所执行,在执行期间不允许其原创 2017-10-08 11:31:19 · 1310 阅读 · 0 评论 -
第三十九讲 递归
递归是一种编程思想,对于我这种愚人来说,理解起来实在是够费劲的,可以这样说,至今为止,我依然不懂递归,也只是对它有一点粗略的、表面的了解,实在是惭愧!递归的概述递归就是函数自身调用自身,即函数内部又使用到了该函数功能。虽然知道是这么一个意思,但一写代码遇到递归就懵逼了,所以这里我就举几个例子来详述一下它。递归的应用之一—— 遍历指定目录下的内容(包含子目录中的内容)现有这样一个...原创 2018-04-26 00:34:31 · 1449 阅读 · 6 评论