Java基础
文章平均质量分 69
mrbacker
这个作者很懒,什么都没留下…
展开
-
String类的常用方法
开发中String必用,而且只依靠String类的基本概念根本无法满足开发需求,所以要求必须熟练掌握String类的方法。所有的String类的方法都可以通过javadoc查到。任何一个类的文档如以下几部分组成:类的相关定义,包括这个类的名字,有哪些父类,哪些接口;类的相关简介,包括一些基本的使用;成员(Field)摘要:属性就是一种成员,会列出所有出现的成员信息;构造方法(Const...原创 2018-10-21 16:38:26 · 507 阅读 · 0 评论 -
内部类的定义和使用
对于内部类的定义使用暂时不作为首要类设计原则。原创 2018-11-25 23:16:42 · 2378 阅读 · 0 评论 -
继承的定义与使用
面向对象的第二大特点就是继承:继承的主要作用在于已有的基础上继续进行功能的扩充。继承问题的引出如果要想更好的解释继承的作用,按照之前学习到的概念来定义两个类:人、学生。那么现在的定义效果如下:Person类class Person { private String name; private int age; public void setName(String name) {...原创 2018-11-27 00:28:53 · 426 阅读 · 0 评论 -
数组操作
现在定义一个数组(整形数组)的操作类,在这个类中有几个要求:数组的大小由类创建对象的时候动态决定;可以通过类向数组中进行数组的保存,保存的时候需要考虑到数组的大小问题;如果发现数组空间不足,则可以进行数组长度的动态扩充;可以取得数组的全部数据(增加顺序)。而后在这一基础上要求继续扩展两个派生类:可以进行数组的排序处理;可以进行数组的反转处理。定义Array类在Array类...原创 2018-12-05 00:37:46 · 550 阅读 · 0 评论 -
覆写
清楚了继承的基本概念,此时就可能出现一种情况,如果子类定义了父类相同的方法或属性,这就成为覆写。方法的覆写方法的覆写是子类定义了与父类方法名称、参数类型及个数完全相同的方法,但是被覆写的方法不能够拥有比父类更为严格的访问控制权限。范例: 简单的方法覆写class Person { public void printInfo() { System.out.println("【Perso...原创 2018-12-01 00:15:55 · 561 阅读 · 1 评论 -
final关键字
在Java中final被称为终结器,可以使用final来定义类、方法、常量。使用final定义的类不能有子类。public final class String使用final定义的方法不允许被子类重写。使用final定义的变量就成为了常量,常量必须在声明时赋值,并且不允许修改。 如果要定义常量,往往会使用public static final来定义全局常量。而且常量的标识符必须采用大写字母的...原创 2018-12-09 00:15:04 · 197 阅读 · 0 评论 -
匿名内部类
在学习匿名内部类之前,先学习一个小例子。范例: 观察程序问题interface IMessage { public void print();}class MessageImpl implements IMessage { public void print() { System.out.println("Hello"); }}public class TestDemo {...原创 2018-12-14 21:50:06 · 155 阅读 · 0 评论 -
Object类
Object类是Java默认提供的一个类,可以这么说,Java里面除了Object类之外,所有的类都是存在有继承关系的。默认会继承Object父类,也就是说以下两种类定义是完全相同的。class Message {}class Message extends Object {}那么也就是证明所有的类对象都可以使用Object接收。class Message {}class Perso...原创 2018-12-14 22:05:07 · 207 阅读 · 0 评论 -
异常的捕获和处理
几乎所有的代码都可能产生异常,所以为了保证程序出现异常之后可以正常执行完毕,就需要进行异常处理。异常的影响异常是导致程序中断执行的指令流。但是程序之中如果出现异常并且没有合理处理的话,就会导致程序终止执行。范例: 没有异常产生的程序public class TestDemo { public static void main(String[] args) { System.out....原创 2018-12-20 22:53:19 · 4331 阅读 · 0 评论 -
包装类
Object可以接收所有的应用数据类型,这其中又出现一个新问题,数据类型分为基本类型和引用类型,那基本数据类型怎么处理呢?包装类的基本原理所谓的包装类指的就是将基本数据类型封转到一个类中,如下的一个类:class MyInt { private int num; public MyInt(int num) { this.num = num; } public int intVal...原创 2018-12-16 15:47:08 · 154 阅读 · 0 评论 -
包的定义与使用
包的本质实际上就属于一个文件夹。在任何的项目里面很难避免重复的类名出现,而且如果所有的*.class文件都存放在一个目录之中,那么就有可能出现覆盖的情况。所以Java程序都应该保存在各自的目录里面,而这个目录则成为包。包的定义如果要想进行包的定义,只需要在*.java源文件的第一行编写:package 包名称即可。package cn.isohard.msg;public class He...原创 2018-12-17 01:38:55 · 566 阅读 · 0 评论 -
多态性
知道了关于继承的所有概念,但是并不意味着只要使用继承就可以实现代码的全部重用,而在继承之后又有了一个重要的概念:多态性。在Java里面对于多态的核心的表现主要有以下两点:方法的多态性:方法的重载:同一个方法名称可以根据参数的类型及个数的不同调用不同的方法体;方法的重写:同一个父类的方法,可能根据实例化的子类不同也有不同的实现。对象的多态性(前提:方法重写):【自动】对象的...原创 2018-12-10 23:31:16 · 178 阅读 · 1 评论 -
抽象类的定义与使用
在以后所有的进行的项目开发之中,不要出现一个类去继承一个已经实现好的类,而只能继承抽象类和接口。对象多态性的核心本质在于方法的重写,那么如果现在子类没有去进行指定方法的重写,这样的操作就有些不合要求的。所以如果要对子类的方法进行一些强制的要求就必须采用抽象类来解决。抽象类的基本概念抽象类只是在普通类的基础上扩充了一些抽象方法而已。所谓的额抽象方法指的是只声明而未实现(没有方法体)的方法,所有...原创 2018-12-11 00:06:05 · 535 阅读 · 0 评论 -
接口的定义与使用
抽线类与普通类相比最大的特点是约定了子类的实现要求,但是抽象类有一个缺点:单继承,如果要想约定子类的实现要求以及避免单继承的局限就需要使用接口。设计中可以使用抽象类和接口,接口优先选择。接口的基本概念接口就是一个抽象方法和全部常量的集合,在Java中可以使用interface关键字来进行定义。范例: 定义一个接口//因为接口和类的定义命名要求相同,所以为了区分//建议在接口前面追加一个字...原创 2018-12-11 23:10:11 · 858 阅读 · 0 评论 -
访问控制权限
已经知道的private就属于一种访问控制权限,而这种访问控制权限只是封装的一部分,在Java里面提供有4种访问控制权限:private、default、protected、public,而这四种控制权限定义如下:No.范围privatedefaultprotectedpublic1同一包中的同一类√√√√2同一包中的不同类√√√3不...原创 2018-12-18 00:44:35 · 292 阅读 · 0 评论 -
jar命令
电脑中往往会将许多的相关联的文件放到压缩文件里面,实际上jar也是一种压缩文件,只不过里面保存的都是 *.class 文件,也就是说如果现在要实现某一个功能模块,可能有几百个类,那最终交付给用户使用的时候为了方便管理,就会将这些文件形成一个压缩包提供。在JDK之中提供有实现jar文件操作的命令,输入jar就可以了。对于此命令有几个常用参数:“c”:创建新档案;“f”:指定档案文件名;“v...原创 2018-12-18 01:07:11 · 190 阅读 · 0 评论 -
链表
链表的基本介绍要想保存多个对象,首先的方法是对象数组,同时如果该数组可以保存任意对象,那应该是Object型的数组。Object[] data = new Object[3];。但是数组是定长的线性结构。如果数据的数量不确定,那就很难用数组来表示了。类似火车的车厢的设计模式,动态的进行车厢的挂载,那么假设每一节车厢只保留一个数据,并不受内存的限制,就可以证明解决了数据的长度问题。火车车厢不能只...原创 2018-12-23 22:00:45 · 374 阅读 · 0 评论 -
综合案例:宠物商店
建立宠物商店,里面可以进行要销售宠物的上架、下架、关键字查询。宠物的信息只需要:名字、年龄、颜色。那么此时对应的关系:一个宠物商店有多种宠物。建立宠物标准:interface Pet { public String getName(); public String getColor(); public int getAge();}宠物商店只关注于宠物的标准,而...原创 2018-12-23 22:50:00 · 3955 阅读 · 1 评论 -
代码块
代码块是一个不重要的概念,但是作为结构清楚一下就可以了。所以的代码块指的是使用了“{}”定义的一段程序代码,代码块根据其定义的位置以及声明的关键字的不同一共可以分为四类:普通代码块、构造块、静态块、同步代码块。普通代码块普通代码块指的是定义在方法中的代码块。范例: 观察一个简单程序public class TestDemo { public static void main(String...原创 2018-11-25 18:00:21 · 156 阅读 · 0 评论 -
static关键字
在所有定义的方法和属性上实际上都可以使用static关键字。static属性范例: 定义一个人的类,并设置他的国家// epi 42 time 15:00class Person { private String name; private int age; String country = "中国"; //为了后面操作方便,暂时不封装 public Person(String...原创 2018-11-20 00:04:21 · 214 阅读 · 0 评论 -
数据表与简答Java类(角色与权限)
进行单独类的描述class Dept { //部门信息 private int did; private String dname; public Dept(int did, String dname) { this.did = did; this.dname = dname; } public String getInfo() { return "【部门】did =...原创 2018-11-19 22:36:06 · 255 阅读 · 0 评论 -
this关键字
this关键字可以做三件事情:调用本类属性调用本类方法(普通、构造)表示当前对象使用this表示本类属性范例: 简单例子class Person { private String name; private int age; public Person(String n, int a) { name = n; age = a; } public String ...原创 2018-10-23 23:52:06 · 209 阅读 · 0 评论 -
Java数据类型划分以及数据类型操作
程序就是一场数字游戏Java的数据类型划分Java数据类型一共分为两大类。基本数据类型: 数值型:表示整数或小数 整形:byte、short、int、long ---- 默认值:0; 浮点型:float、double ---- 默认值:0.0; 字符型:char ----默认值:'\u0000' 布尔型:boolean ----默认值 :null...原创 2018-01-23 15:27:27 · 487 阅读 · 2 评论 -
Java运算符
数学是整个程序基础,所以各种常用计算符号,基本Java都会提供。程序可以提供的只是最为基础的数学运算支持,如果需要完成更加复杂的计算,你需要自己进行二进制的处理了。基础数学运算符:在以后写的代码中,千万别写出一下的复杂计算:public class TestDemo { public static void main(String[] args) { int x = 10; ...原创 2018-01-23 15:47:52 · 223 阅读 · 1 评论 -
Java程序逻辑控制
程序的执行一共有三类形式:顺序结构、分支结构、循环结构。顺序结构指所有的代码按照定义的先后执行,就好比在之前主方法中所编写的代码一样,按照定义顺序一行行执行。分支结构分支结构指的是进行逻辑判断,但满足某些条件的时候才会执行某些语句.而对于分支结构有两类:if分支结构、switch分支结构。if的分支结构的基础语法如下:if(布尔表达式) { 条件满足时的代码}原创 2018-01-27 15:18:01 · 310 阅读 · 1 评论 -
Java方法的定义和使用
方法的最大好处是可以进行重复调用,但是至于说那些操作要形成方法,这些都要根据你的实际项目经验而自我总结的。方法的基本定义限制条件:在主类中定义,并且由主方法直接调用的方法形式。 方法就是一段可以被重复调用的方法块。在Java中要想进行方法的定义,则可以使用如下的语法完成。public static 返回类型 方法名称([参数类型 变量, ......]) { 方法体代码;原创 2018-01-27 17:29:57 · 81858 阅读 · 10 评论 -
Java类与对象
面向对象简介面向对象是一种程序的设计,但是并不表示世界上所有的开发者都认同面向对象。因为有很多的开发者认为面向对象过于复杂,所以更多的人愿意使用函数式编程。面向对象的前身属于面向过程,如果要先笼统的去解释这两种开发模型的区别,最好的例子:面向过程是解决问题,而面向对象是模块化设计。对于现在的程序开发更多情况下就像是汽车组装一样,不同的工厂生产不同的配件。将所有的零件组装在一起,就可以形成一...原创 2018-02-17 01:35:27 · 667 阅读 · 1 评论 -
Java private实现封装处理
面向对象之中有三大主要特征:封装、继承、多态,对于封装是Java中最复杂的概念,本次所写的只不过是几个基本概念而已。如果是想清楚封装,首先必须清楚如果没有封装会怎么样。范例:观察如下一段程序class Person { String name; //名字 int age; //年龄 public void info() { System.o...原创 2018-03-27 19:21:39 · 2190 阅读 · 2 评论 -
简单Java类
现在假设有这样一个要求,定义一个雇员类,该类会包含雇员编号、姓名、职位、基本工资、佣金几个属性信息。 这种类称为简单Java类,既然是简单Java类就有自己明确的开发要求:类名称应该有意义,可以明确的描述出某一类事物,例如:Emp、Member、Dept、Dog、Cat;类中所有的属性必须使用private封装,所有属性必须提供有setter、getter方法; 类中可以定义若干个构造...原创 2018-08-13 22:23:34 · 778 阅读 · 1 评论 -
Java中数组的定义与使用(一)
如果说现在要求你定义100个整型变量,那么如果按照之前的做法,可能现在定义的的结构如下:int i1, i2, i3, ... i100;但是这儿时候如果按照此类方式定义就会非常麻烦,...原创 2018-09-01 00:05:13 · 965364 阅读 · 32 评论 -
Java中数组的定义与使用(二)
数组与方法调用数组是一个引用数据类型,那么所有的引用数据类型都可以为其设置多个栈内存指向。所以在进行数组操作的时候,也可以将其通过方法进行处理。范例:方法接受数组public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2,...原创 2018-09-01 23:26:15 · 5097 阅读 · 1 评论 -
Java中数组的定义与使用(三)
数组排序在很多的面试题上都会出现数组排序的操作形式。但是这个时候你千万别写上:java.util.Arrays.sort(数组)。而这种排序都是以升序为主。1、基础的排序操作:范例:冒泡排序public class ArrayDemo { public static void main(String args[]) { int data[] = ne...原创 2018-09-04 13:09:11 · 4644 阅读 · 5 评论 -
String类的基本特点
几乎所有的项目开发过程之中都一定会存在String类的使用,但是String本身的定义有一些差别,以及在使用上是有一些注意事项的。String类两种实例化方式String可以直接采用赋值的形式进行处理,这一点感觉上和基本数据类型是非常相似的。范例:直接复制实例化对象public class StringDemo { public static void main(S...原创 2018-10-20 20:24:12 · 363 阅读 · 0 评论 -
引用传递进阶分析
引用传递是Java的整体核心,如果不懂引用传递,基本上所有的代码都无法进行正常分析。三个引用传递分析例子。范例: 第一个引用传递分析class Message { private int num; public void setNum(int num){ this.num = num; } public int getNum() { return this.num; }}...原创 2018-10-24 22:44:31 · 147 阅读 · 0 评论 -
Java中对象比较
如果现在要想确定两个对象是否相等,那么应该比较的是对象的完整信息,而对象的完整信息就是对象的属性,所以所谓的对象比较指的就是两个对象的属性进行比较。对象比较的实现形式一class Person { private String name; private int age; public Person(String name, int age) { this.name = name;...原创 2018-10-24 23:05:55 · 4839 阅读 · 0 评论 -
引用传递实际应用
引用传递可以说是Java的核心,也正是因为引用传递,所以可以更好的表现出现实世界的抽象。例如,现在要求描述出这样的一种关系:一个人有一辆汽车或没有汽车。很明显,现在应该是有两个实体类,人(Member)和车(Car)。范例: 现在可以得出如下的设计class Member { private String name; private int age; private Car car; ...原创 2018-10-24 23:51:43 · 190 阅读 · 0 评论 -
数据表与简单Java类(一对多)
假设有两张数据表:emp、dept:emp表: empno、ename、job、sal、comm、mgr、deptno;dept表:deptno、dname、loc。要求可以通过程序描述出如下的对应关系:一个部门有多个雇员,并且可以输出一个部门的完整信息(包括雇员信息);可以根据一个雇员找到雇员对应的领导信息和雇员所在部门的信息。实际开发中的简单Java类的设计原则,通过简单的...原创 2018-11-16 23:41:14 · 654 阅读 · 0 评论 -
数据表与简单Java类(多对多)
定义一个学生选课的操作表:三张数据表学生表:学生编号、姓名、年龄;课程表:课程编号、课程名称、学分;学生-课程关系表:学生编号、课程编号、成绩。要求:可以实现如下的信息输出:可以找到一门课程,以及参加此课程的所有的学生信息,和他的成绩可以根据一个学生,找到所参加的所有课程和每门成绩。定义出基本类,暂时不考虑所有的关系...原创 2018-11-19 17:41:19 · 405 阅读 · 0 评论 -
单例设计模式
所谓的单例设计模式指的是一个类只允许产生一个实例化对象。单例设计模式范例: 一个简单程序class Singleton { public void print() { System.out.println("Hello world !"); }}public class TestSingleton { public static void main...原创 2018-12-18 21:34:59 · 214 阅读 · 0 评论