##继承:
当一个项目中的多个类都有共同特征时,可以创建一个包含这些共同特征的父类,原来的类通过继承的方式继承这个父类。
总结:子类继承父类,获得父类的属性。
##父类与子类的概念:
父类概念:包含子类共同特征且被子类继承的类叫父类,也可以称为超(super)类或基类。
子类概念:继承父类的类称之为子类。
##父类:
在继承关系中父类的属性和方法一律用protected来修饰,换而言之protected修饰符就是专门为继承设计的。 但有时父类的某- 阅读剩余部分 -
##访问修饰符:
public:访问限制最宽的修饰符,一般称之为“公共的”。 被其修饰的类成员不仅可以跨类访问,而且允许跨包(package)访问。
private:对访问权限限制的最窄的修饰符,一般称之为“私有的”。 被其修饰的类成员只能被本类的对象访问,其子类不能访问,更不能允许跨包访问。
protected:介于public 和 private 之间的一种访问修饰符,一般称之为“保护型”。 被其修饰的类成员只能被类本身的方法访问;但是其子类可以在任何区- 阅读剩余部分 -
##多态:
当创建实例时,声明类型和实际类型不一样,调用重写方法时,优先被调用的是实际类型的方法。
多态的前提条件:重写是多态的前提条件
---
####1.创建实例的格式:
```java
声明类型 实例名 = new 实际类型();
double a = 2; //相当于: double a=new Integer(2);
```
声明类型:double
实际类型:Integer
例:
;
实例:

注意:如- 阅读剩余部分 -
this关键字只能在方法中使用!
##this.变量
用处:指向当前对象的变量
指向顺序:1. 子类的成员变量 2.子类局部变量 3.父类的成员变量 4.父类的局部变量
如下代码:
1.首先在类中定义了一个叫name的成员变量,然后在类的方法里也定义了一个叫name的局部变量。
2.在方法test中直接调用name这个变量,JAVA会按照就近原则,调用最近的变量即局部变量name="lisi" (其他方法中的同名变量不参与就近原则,只有该方法的局部- 阅读剩余部分 -
##方法的重载:
**常用于构造方法**
这些方法的名字都一样,但在其他某些方面不一样:
1.通过修改方法的参数个数来区分不同的重载:
 
2.可以通过修改方法的参数类型来区分不同的重载:
:
1. 必须用static关键- 阅读剩余部分 -
##构造方法:
```java
格式:public 方法(类)名(参数类型 参数名){ }
```
注意:1.构造方法的方法名必须和类名一样 2.构造方法不需要返回值
作用:并不是属于程序员执行的方法,而是属于系统执行的方法。每当生成实例时都会自动调用该方法。
其它:
1、类的构造方法被调用时,它首先调用父类的构造方法,然后运行实例变量和静态变量的初始化器,然后才运行构造器本身。
2、如果构造方法没有显示的调用一个父类的构造器,那么编译器会自动为- 阅读剩余部分 -
一个JAVA文件中有且只能有一个主类:
主类:以"public"开头 并且类名为"文件名"的类 称为主类
类:用户可自己创建扩展的类
##创建类:
```java
class 类名{
属性;
方法(){ //只有在方法内才能调用方法(执行print这类语句),方法外只能定义属性和方法。
执行语句;
}
}
```
####创建类成员:
创建属性:
```java
数据类型 属性名 = 默认值;
```
创建方法:
```- 阅读剩余部分 -
正则表达式元字符:
[0-9a-zA-z]

匹配方括号:\\[ 和\\]
扩展: 去"列表字符串"的所有字符,如去掉[1, 2, 3]中的逗号和方括号:[\\[,\\]]+

```
##异常处理:
格式:
```java
try{
代码块; //正常情况下执行的代码
} catch (异常名 变量){ //异常名可以为父类Exception,也可以为子类即详细的异常
代码块; //捕获到异常名对应的异常时执行的代码
}- 阅读剩余部分 -