构造函数 概念:构建创造对象时调用的函数. 作用:可以给对象进行初始化,创建对象都必须要通过构造函数初始化. 一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数构造函数.如果在类中定义了指定的构造函数,那么类中默认构造函数就没有了. 构造函数可以直接调用一般函数,但是一般函数不能直接调用构造函数,如果想调用,就要new一下. class Person { private String name; private int age; //定义一个Person类的构造函数 Person()…
在之前讲到java面向对象继承的时候,我们只讲到了两个比较重要的知识点,一个是父子类当中有同名的成员变量,这个时候,我们引入了super这个关键字来区分这两个同名成员变量,除此之外,我们还讲到了父子同名函数的覆盖,这父子同名函数必须是参数类型.个数相同,返回值也相同才可以,同时子类要覆盖后的成员方法的访问权限要大于等于父类当中的同名函数权限. 那么还有一个地方我们没有讲到,那就是父子当中的构造函数是怎样的? class Fu { Fu() { System.out.println("Fu chu…
进程:正在进行中的程序(直译). 线程:就是进程中一个负责程序执行的控制单元(执行路径) 一个进程中可以有多个执行路径,称之为多线程. 一个进程中至少要有一个线程. 开启多个线程是为了同时运行多部分代码. 每一个线程都有自己运行的内容.这个内容可以称为线程要执行的任务. 多线程的好处:解决了多部分同时运行的问题. 多线程的弊端:线程太多回到效率的降低. 其实应用程序的执行都是cpu在做着快速的切换完成的.这个切换是随机的. jvm启动时就启动了多个线程,至少有两个线程可以分析的出来. 1.执行m…
继承的好处1. 提高了代码的复用性.2. 让类与类之间产生了关系,给第三个特征多态提供了前提. java中支持单继承,不直接支持多继承,但对C++中的多继承机制进行改良.java支持多层继承. C继承B,B继承A,就会出现继承体系. 当要使用一个继承体系时:1. 查看该体系中的顶层类,了解该体系的基本功能.2. 创建体系中的最子类对象,完成共能的使用. 什么时候定义继承呢?当类与类之间存在着所属关系的时候,就定义继承,xxx是yyy中的一种,  xxx extends yyy. class Pe…
文档注释 单行注释用 // 多行注释有两种,第一种是 /* 内容 */,第二种是/** 内容 */. 这两种多行注释的区别是/** 内容 */这种注释可以生成一个该文件的注释文档,下面是演示代码. ArrayTool.java文件 /** 建立一个用于操作数组的工具类,其中包含着常见的对数组操作的函数,如: 最值,排序等. @author 纸人 @version v1.0 */ //ArrayTool.java文件 public class ArrayTool //加上public后,文件名和类…
下面主要讲解一个针对数组操作的工具类. a.java -- 工具类文件 //按理来说要先编译本文件, 然后再编译主函数 class ArrayTool { /* 获取整型数组的最大值 */ public int getMax(int[] arr) { int maxIndex = 0; for (int x=1; x<arr.length ; x++ ) { if (arr[x]>arr[maxIndex]) { maxIndex = x; } } return arr[maxIndex];…
被static标记的东西会放在内存中被共享的,对象用到时,就会来取的. class Person { String name; //成员变量,实例变量 static String country = "CN"; //静态变量,类变量 public void show() { System.out.println(country+":"+name); } } class StaticDemo { public static void main(String[] arg…
线程间通讯多个线程在处理同一资源,但是任务却不同. class Resource { String name; String sex; } //输入 class Input implements Runnable { Resource r; Input(Resource r) { this.r = r; } public void run() { int i = 0; while(true) { synchronized(r) //保证两个线程用同一个锁 { if (i==0) { r.name…
概述 异常:是在运行时期发生的不正常情况. 在java中用类的形式对不正常情况进行了描述和封装对象. 描述不正常的情况的类,就称为异常类. 以前正常流程代码和问题处理代码相结合,现在将正常流程代码和问题处理代码分离,提高阅读性. 其实异常就是java通过面向对象的思想将问题封装成了对象. 用异常类对其进行描述.不同的问题用不同的类进行具体的描述. 问题很多,意味着描述的类也很多.将其共性进行向上抽取,形成了异常体系. 最终问题(不正常情况)就分成了两大类 Throwable:无论是error,还…
abstract class AbsDemo { abstract void show1(); abstract void show2(); } 当一个抽象类中的方法都是抽象的时候,这时可以将该抽象类用另一种形式定义和表示-----接口  interface 定义接口使用的关键字不是class,是interface. 对于接口当中常见的成员:而且这些成员都有固定的修饰符1. 全局常量:public static final2. 抽象方法:public abstract 由此得出结论,接口中的成员…