![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 65
西门吹雪叶孤城
爱生活,爱Java
展开
-
Java的单例设计模式
1设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。------------------------------------------原创 2017-06-15 16:53:35 · 373 阅读 · 0 评论 -
Java封装
1.封装的概念什么是封装(面向对象三大特征之一)① 把对象的状态和行为看成一个统一的整体,将二者存放在一个独立的模块中(类);② "信息隐藏", 把不需要让外界知道的信息隐藏起来,尽可能隐藏对象功能实现细节,向外暴露方法,保证外界安全访问功能; 把所有的字段使用private私有化,不准外界访问,把方法使用public修饰,允许外界访问. 把所有数据信息隐藏起来,尽可能隐藏多的功能,原创 2017-06-13 12:52:43 · 247 阅读 · 0 评论 -
java的import
1.import作用没有使用import之前,操作不在同一个包中的类,得使用全限定名来操作./** 没有使用import每次调用Arrays类的方法时都要使用它的全限定名*/class ImportDemo { public static void main(String[] args) { int[] arr = {1,5,78,34,23,5,6,2}; S原创 2017-06-13 11:40:07 · 954 阅读 · 0 评论 -
Java的package
1.引出package生活中场景: 在我的电脑硬盘的某一个文件夹中里存有1000部片,我会在把新的电影存到该文件夹中,也可以看该文件夹中的任何电影. 可能出现的问题/操作不便: 问题1: 不能出现文件名和拓展名相同的文件.---->如何解决? 问题2: 想看片了,想从1000部中找到自己现在想看的某一部,存在特别麻烦.原创 2017-06-12 20:45:15 · 326 阅读 · 0 评论 -
Java变量深入
1.变量的定义以及分类定义变量的语法: 数据类型 变量名 = 值;--------------------------------------------------变量根据在类中定义位置的不同,分成两大类:成员变量: 全局变量/字段(Field),不要称之为属性(错误). 直接定义在类中,方法外面. 1):类成员变量.原创 2017-06-12 20:20:02 · 221 阅读 · 0 评论 -
Java的static修饰符
1.引出static在生活中有些东西不是属于某一个具体对象的,而是属于整个事物的类型,比如:全世界人的总数,人的毁灭的行为.毁灭的行为,应该属于人类,而不属于某一个人.状态和行为应该有对象和类型之分. 有的状态和行为应该属于对象,不同的对象,状态和行为可以不一样. 有的状态和行为应该属于类,不属于对象.问题:现在如何表示人类毁灭这个行为(dest原创 2017-06-12 16:23:47 · 361 阅读 · 0 评论 -
Java构造函数
1.引出构造器创建一个学生对象的时候,代码如下:Student s1 = new Student();这个代码特别像:在调用一个方法名称为Student的无参数方法.我们把这种特殊的方法,称之为构造方法,构造器(构造函数/构造子:Constructor).但是我们发现在Student类中,却找不到该构造方法,找不到,却又没有报错.编译器在编译源文件的时候,会创建一个缺原创 2017-06-12 15:55:02 · 518 阅读 · 0 评论 -
Java数组
1.数组的概念什么是数组,一组数据,一堆数据: 所谓数组,是在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来的一种数据形式。这些按一定顺序排列的同类型数据的集合称为数组。而数组中的每一个数据称之为数组元素,数组中的元素以索引来表示其存放的位置,索引从0开始,步长是1,有点像Excel表格的行号,逐行递增。 好比宾馆的房间.2.数组的定义:原创 2017-06-03 23:12:44 · 275 阅读 · 0 评论 -
java的异常Exception
1.什么是异常非正常的,不同于平常的. 生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.张三要开车去上班,正常情况下,应该是到达公司,上班.不正常的情况下,车子坏了,只能走路去,导致上班迟到. 程序中:在程序中,代码出现错误,程序就会终止运行.异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运原创 2017-06-19 22:24:02 · 656 阅读 · 0 评论 -
JavaBean规范
1.javaBean规范 JavaBean 是一种JAVA语言写成的可重用组件(类). 必须遵循一定的规范: 1):类必须使用public修饰. 2):必须保证有公共无参数构造器,即使手动提供了带参数的构造器,也得提供无参数构造器.. 3):包含了属性的操作手段(给属性赋值,获取属性值). 分类: 1):复杂原创 2017-06-13 13:06:39 · 2304 阅读 · 0 评论 -
Java的this关键字
1.什么是this 表示当前对象,什么优势当前对象. this主要存在于两个位置: 构造器中: 就表示当前创建的对象. 方法中: 哪一个对象调用this所在的方法,那么此时this就表示哪一个对象.当一个对象创建之后,JVM会分配一个引用自身的引用:this.2.使用this① 解决成员变量和参数(局部变量原创 2017-06-13 14:09:24 · 282 阅读 · 0 评论 -
Java的final修饰符
1.为什么得需要使用final修饰符 继承关系最大弊端是破坏封装:子类能访问父类的实现细节,而且可以通过方法覆盖的形式修改实现细节.多个修饰符之间是没有先后关系的. public static final /public final static /final static punlic.final本身的含义是“最终的,不可改变的”,它可以修饰非抽象类,非抽象原创 2017-06-15 16:23:58 · 365 阅读 · 0 评论 -
Java的组合关系
1.为什么使用组合关系继承关系: 子类可以继承到父类中部分的成员,那么此时子类是可以修改到父类的信息的.继承关系破坏封装,为了复用代码可能会让子类具有不该具有的功能.-----------------------------------------------------------------------------------为什么引入继承: 为了代码复用问题.解决代码复用原创 2017-06-14 16:27:06 · 10822 阅读 · 2 评论 -
Java的引用类型转换
1.基本数据类型转换: 自动类型转换: 把小类型的数据 赋给 大类型的变量. (此时的大和小表示的容量范围) byte b = 12; byte是1个字节 int i = b; int是4个字节 强制类型转换: 把大类型的数据赋给 小类型的变量. short s = (short) i ;short是2个字节2.引用类型的转换:引用类原创 2017-06-14 16:08:15 · 1379 阅读 · 0 评论 -
Java的多态
1.多态我们知道继承关系是一种”is A”的关系,也就说子类是父类的一种特殊情况问题: 子类的对象是动物?既然子类是一种特殊的父类,那么我们可不可以认为狗对象/猫对象就是动物类型的对象.Animal d = new Dog(); //创建一只狗对象Animal c = new Cat(); //创建一只猫对象-----------------------原创 2017-06-14 11:28:33 · 312 阅读 · 0 评论 -
Java的根类Object
1.什么是ObjectObject类是Java语言的根类,要么是一个类的直接父类,要么就是一个类的间接父类.class ABC{} 其实等价于 class ABC extends Object{}------------------------------------------------------------------------------所有对象(包括数组)都实现原创 2017-06-13 22:27:16 · 3086 阅读 · 0 评论 -
Java的super关键字
1.super的使用要实现在子类中的某一个方法中,去调用父类被覆盖的方法.就要使用super//鸟类class Bird extends Object { public void fly(){ System.out.println("父类的方法:我再仰望,自由飞翔"); }}//企鹅类class Penguin extends Bird{ //重新定义了fly方原创 2017-06-13 20:38:29 · 416 阅读 · 0 评论 -
Java的方法覆盖
1.引出方法覆盖场景:子类拓展了父类,可以获得父类的部分方法和成员变量。可是当父类的某个方法不适合于子类本身的特征时,此时怎么办?如:企鹅(Penguin)和鸵鸟(Ostrich)是鸟类中的一个特殊品种,所以企鹅/鸵鸟类是鸟类的一个子类,但是鸟类有飞翔的功能,但是对应企鹅/鸵鸟,飞翔的行为显然不适合于它。此时肿么办?//鸟类class Bird extends Objec原创 2017-06-13 16:34:01 · 2868 阅读 · 0 评论 -
java的继承
1.引出继承发现Teacher,Student,Employee代码中存在着共同的代码.继承:解决代码重复的问题.2.什么是继承什么是继承关系:基于某个父类对对象的定义加以拓展,而产生新的子类定义,子类可以继承父类原来的某些定义,也可以增加原来父类所没有的定义,或者覆写父类中的某些特性。从面向对象的角度上说:继承是一种从一般到特殊的关系,是一原创 2017-06-13 14:36:31 · 324 阅读 · 0 评论 -
Java变量
1.变量的定义变量的定义:表示存储空间,可用来存放某一类型的常量,没有固定值,并可以重复使用,也可以用来存储某种类型的未知数据。好比饭店雅间的名字.变量的特点:① 占据着内存中的某一块存储区域;② 该区域有自己的名称(变量名)和类型(数据类型);③ 可以被重复使用;④ 该区域的数据可以在同一类型范围内不断变化;变量的定义:先定义变量,再赋值:数据类型 变量原创 2017-06-02 22:42:42 · 255 阅读 · 0 评论 -
java面向对象
1、面向对象: 一种基于面向过程的新的编程思想,顾名思义该思想是站在对象的角度思考问题,我们把多个功能合理的放到不同对象里,强调的是具备某些功能的对象。具备某种功能的实体,称为对象.面向对象最小的程序单元是:类. 面向对象更加符合我们常规的思维方式,稳定性好,可重用性强,易于开发大型软件产品,有良好的可维护性。 在软件工程上,面向对象可以使工程更加模块化,实现原创 2017-06-07 10:51:38 · 670 阅读 · 3 评论 -
java的日期类
1.日期相关类Date类: java.util.Date类,不是java.sql.Date. 类 Date 表示特定的瞬间,精确到毫秒.import java.util.Date;public class DateDemo1 { public static void main(String[] args) { Date date = new Date(); System.o原创 2017-06-18 19:39:02 · 673 阅读 · 0 评论 -
Java的接口
1.什么是接口硬件接口:指的是两个硬件设备之间的连接方式。硬件接口既包括物理上的接口,还包括逻辑上的数据传送协议。软件接口:程序代码,特殊的类,表示一种规范,是具有的N个方法的特征集合.---------------------------------------------在封装时,显示器封装了很多歌电子元件等,最终向外暴露数据交互的孔--->接口.目的:设备和设备之间通信桥原创 2017-06-16 14:47:45 · 352 阅读 · 0 评论 -
dos操作命令
1.进入dos窗口在Windows操作系统中编译、运行都需要了解常用DOS命令,所以下面我们来学习一下常用DOS命令(DOS命令是Windows操作系统包含的知识)。DOS命令是在DOS控制台中使用的命令,弹出DOS控制台的方法是:win+R,然后输出cmd,是不是看起来有点熟悉,没错,就是校验JDK安装是否成功是弹出的小黑屏。2.dos常用命令 清屏:cls; 当原创 2017-05-31 22:29:57 · 322 阅读 · 0 评论 -
java的模板方法设计模式
统计不同操作的耗时时间模板操作。OperateTimeTemplate.统计String连接10000此时和int相加10000次的时间差--------------------------------------------------------------------模板方法设计模式:在父类的一个方法中定义一个总体算法的骨架(模板方法),而将某原创 2017-06-15 22:11:41 · 345 阅读 · 0 评论 -
java的抽象类和抽象方法
1.抽象方法使用abstract修饰且没有方法体的方法,称为抽象方法。特点:① 使用抽象abstract修饰,方法没有方法体,留给子类去实现/覆盖。② 抽象方法修饰符不能是private 和 final以及static,为什么?因为要给子类覆盖③ 抽象方法必须定义在抽象类或接口中。一般的:习惯性把abstract写在方法修饰符最前面,一看就知道是抽象方法。-----原创 2017-06-15 21:29:31 · 657 阅读 · 0 评论 -
Java的基本包装数据类型
1引出基本类型包装类 问题1:在面向对象中,”一切皆对象”,现在问题来了,int age = 17;请问这age代码哪里有对象,基本类型变量,不是对象.此时有矛盾. 问题2:现在给你一个复杂的十进制数据,请你迅速在程序给我转换为2进制,8进制,16进制,算法太麻烦了. 问题3:现在使用double类型来表示学生的考试成绩,double类型初始值为0,0:但是:原创 2017-06-15 20:41:33 · 276 阅读 · 0 评论 -
软件开发概述
软件生命周期:软件生命周期: 软件的产生直到报废的整个过程.软件生命周期内有:问题定义, 可行性分析, 总体描述, 系统设计,编码, 调试和测试, 验收与运行, 维护升级到废弃等阶段--------------------------------------------------------------------------------------1)问题的定义及规划: 此阶段原创 2017-06-04 22:05:49 · 448 阅读 · 0 评论 -
java基本语法
Java基本语法:1):Java语言严格区分大小写,好比main和Main是完全不同的概念。2):一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类。若源文件中包括了public类,源文件必须和该public类同名。3):一个源文件中包含N个Java类时,成功编译后会生成N份字节码文件,即每个类都会生成一份单独的class文件,且字节码文件名和其对原创 2017-05-14 16:50:55 · 362 阅读 · 0 评论 -
Java初学
1、Java主要技术和分支以及应用领域(1)Java SEJava Platform,Standard Edition,Java SE 以前称为J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java 应用程序,能为Java EE提供开发基础。(2)Java EEJava Platform,Enterprise Edition,以前称为J2EE。可帮助原创 2017-05-14 14:02:58 · 444 阅读 · 0 评论 -
Java的内部类
1.内部类:定义在类结构中的另一个类类中的定义的成员: 字段 方法 内部类-------------------------------------------------------------------为什么使用内部类:1):增强封装,把内部类隐藏在外部类之内,不许其他类访问内部类。2):内部类能提高代码的可读性和可维原创 2017-06-16 16:06:50 · 300 阅读 · 0 评论 -
java的枚举
1.枚举的定义枚举是从Java5开始提供的一种新的数据类型,是一个特殊的类,就是固定的多个常量对象的集合.定义格式: [修饰符] enum 枚举类名{ 常量A,常量B,常量C;}enum Weekday { MONDAY,TUSESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY;}2.枚举原创 2017-06-16 17:08:56 · 404 阅读 · 0 评论 -
Java的随机数
1.随机数随机地生成的任意的一个数(理论上讲具有不可预知性).Random类用于生产一个伪随机数(通过相同的种子,产生的随机数是相同的)。public Random():使用默认的种子(以当前系统时间作为种子)。public Random(long seed):根据指定的种子。import java.util.Random;public class RandomDe原创 2017-06-18 16:24:27 · 366 阅读 · 1 评论 -
java的StringBuffer和StringBuilder
1.String和StringBuilder以及StringBuffer的区别(建议使用StringBuilder)Sting是不可变的,每次内容改变都会在内存中创建新的对象StringBuffer和StringBuilder都表示可变的字符串,功能方法都是相同的.唯一的区别:StringBuffer: StringBuffer中的方法都使用了synchronized修饰符,表示原创 2017-06-18 16:03:42 · 304 阅读 · 0 评论 -
Java的String类
1.什么是字符串字符序列:把多个字符按照一定得顺序排列起来.字符串:把多个字符串串联起来(好比羊肉串).字符串的分类: 不可变的字符串:String:当前对象创建完毕之后,该对象的内容(字符序列)是不能改变的,一旦内容改变就是一个新的对象. 可变的字符串:StringBuilder/StringBuffer:当对象创建完毕之后,该对象的内容可以发生改原创 2017-06-18 15:48:22 · 322 阅读 · 0 评论 -
Java的Scanner类
Scanner类Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。Scanner使用步骤: 导包:import java.util.Scanner; 创建对象实例:Scanner sc = new Scanner(System.in);调用方法: int i = sc.nextInt(); 用来接收控制台录入的数字原创 2017-06-06 22:21:25 · 540 阅读 · 0 评论 -
Java的BigDecimal类
1.BigDecimal介绍float和double都不能表示精确的小数,此时使用BigDecimal,用于处理金钱和精度要求高的数据.先看看这段代码结果:public class BigDecimalDemo { public static void main(String[] args) { System.out.println("0.09 + 0.01=" + (0.09原创 2017-06-18 11:25:36 · 551 阅读 · 1 评论 -
java关键字
关键字:在编程语言中有一些事先定义的,有着特殊含义和用途的单词。保留字:和关键字一样都是编程语言事先定义好的,只是说现在暂时没有特殊的用途,但说不定以后某天会突然被赋予意义和被使用到,因此被保留下来的单词,goto和const就是Java的保留字。看图;注意关键字和保留字都是由小写组成,关键字不要去记,学一个记一个。注意:java 无sizeof 、goto、 const 关键字原创 2017-06-01 22:53:37 · 254 阅读 · 0 评论 -
Java3大注释
Java的注释信息是给程序员看的,编译器(javac)在编译的时候会忽略掉源文件中的注释信息。为此,Java提供3种注释类型:① 单行注释;② 多行注释;③ 文档注释;单行注释:// ; //注释信息,从//开始到本行结束的所有字符会被编译器忽略;多行注释:/* */;/* 注释信息 */之间的所有字符会被编译器忽略文档注释:/** */;/** 注释信息 */和多行注原创 2017-06-01 22:42:17 · 370 阅读 · 0 评论 -
Eclipse常用快捷键
代码助手:Alt+/快速修正:Ctrl+1删除选中的行:Ctrl+D组织导入:Ctrl+Shift+O格式化代码:Ctrl+Shift+F查看某个类的源代码:Ctrl+点进去快速Outline:Ctrl+O打开继承体系:Ctrl+T打开资源:Ctrl+Shift+R打开类型:Ctrl+Shift+T上下移动选中的行:Alt+Up/Down上下复制原创 2017-06-16 18:45:53 · 280 阅读 · 0 评论