总结

 

面向对象的三大特征

 

⎧⎩⎨123

 

区别重载与多态

 

{

 

类与对象:

类体=属性(变量)+方法(函数)

类可以把对象作为自己的成员变量。

  • 对象注意:

    1.对象变量(对象引用)储存的是对象实体的地址,new操作符返回的是对象实体的地址。

    2.避免使用空对象: 没有实体的对象称作空对象,空对象不能使用,即不能让一个空对象去调用方法产生行为。

    3.对象创建:首先声明对象变量(对象引用);然后用同类型的对象实体为对象变量赋值(通过new操作符来实现)。

  • 构造方法:

    1 构造方法名字必须同类名一样;

    2 构造方法没有返回值类型;

    3 构造方法可以重载;

  • 基本类型变量和引用类型变量的区别:

    基本类型变量在内存中储存的是一个基本类型值;而引用类型变量储存的是一个引用(引用可以理解为地址),它指向对象在内存中的位置。

  • 类方法和类变量:

 

⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧⎩⎨static(static)⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪1访2访访3:⎧⎩⎨⎪⎪⎪⎪⎪⎪1.2.

 

  • 方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。

  • this关键字:当this关键字出现实例方法中时,代表正在调用该方法的当前对象。

  • 访问权限:

 

⎧⎩⎨⎪⎪⎪⎪1.private访()2.publicpublic访3.protected访4.privatepublicprotected

 

  • 子类与父类:

    1 子类除了可以“拥有”父类中的部分成员外,还可以定义自己特有的成员。

    2 如果一个类没有使用“extends”关键字继承其他类,则默认是“Object”类的子类

  • 子类:

    1.子类继承父类的属性、功能(方法),子类中只需声明特有的东西。

    2.带private修饰符的属性、方法是不能被继承的。

    3.构造函数不能被继承。

    4.在方法中调用构造方法用this()。

    5.使用super关键字可以使用被子类隐藏的成员变量或方法。 super指向该关键字所在类的父类。

    6.Java是单继承的,即只能从一个类继承。 单继承的优点是代码更可靠。

  • 方法重写:

    子类通过重写可以隐藏已继承的实例方法。

  • final关键字:

    1、用final关键字修饰的类为final类。final类不能被继承。

    2、用final关键字修饰的方法为final方法。final方法不允许子类重写。

    3、用final关键字修饰的变量为常量。

  • 多态:如果一个类有很多子类,并且这些子类都重写了父类的某个方法,那么当子类对象的上转型对象在调用这个方法时就可能具有多种形态,称为多态。

  • 抽象abstract:

    1、用关键字abstract修饰的类称为abstract类。用关键字abstract修饰的成员方法称为abstract方法。

    2、抽象类不能使用new关键字创建对象。

    3、抽象方法只有声明,没有方法体。只能存在抽象类和接口中。

    4、不允许使用final和abstract同时修饰一个方法。

    5、如果某个非抽象类继承了抽象类,则必须重写父类的所有抽象方法(去掉abstract关键字),并给出方法体。

    6、在程序设计时,抽象类用于定义类的重要特征,非抽象类则关注动作的具体实现。

通过抽象可以提高程序的可维护性。

接口

接口是一种与类相似的结构,只包含常量和抽象方法。 接口的目的是规定一些重要的方法,即将一些重要的方法封装在接口中,但接口只关心行为的结果,但不关心行为的具体动作,即接口中的方法都是抽象方法。

1、接口中的属性都是public static(可省略)类型的常量,接口中的方法都是public abstract(可省略)方法;

2、一个类可以同时实现多个接口; 一个接口可以被多个类实现。

3、类在实现接口的方法时,方法的名字、返回类型、参数个数 及类型必须与接口中的方法完全一致;修饰符必须加上 public,删除abstract关键字;

4、接口也可以被继承(父接口和子接口);

由接口产生的多态是指不同的类在实现同一个接口时可能具有不同的实现方式,那么接口变量在回调接口方法时就可能具有多种形态。

  • abstract类与接口的比较

    1.abstract类和接口都可以有abstract方法。

    2.接口中只可以有常量,不能有变量;而abstract类中既可以有常量也可以有变量。

    3.abstract类中可以有非abstract方法,接口不可以。

内部类

Java支持在一个类中声明另一个类,这样的类称作内部类,而包含内部类的类成为内部类的外包类。内部类:存在于一个类内部的类被称为内部类。内部类分为成员类、静态类和匿名类。

 

⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪12345static⎧⎩⎨123⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪1new()2345static

 

异常

1 异常:把在程序运行的过程中出现的、Java能够捕获的错误称为异常。例如:0做除数、数组越界或试图打开一个不存在的文件。

2 在Java语言中,异常的实质是对象。所谓程序发生了异常,其实就是指产生了异常对象。

3 异常的出现是为了当程序运行出现错误时,程序还能够顺利执行下去,而不是中断程序。异常处理将会改变程序的控制流程,让程序有机会对错误作出处理。

java中的异常分为两类: 

{Error:Exception:

 

 

⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪ArithmeticException0NullPointerExceptionArrayIndexOutOfBoundsExceptionIOException/SecurityException

 

try语句捕获异常,catch语句处理异常

try语句用来启动Java的异常处理机制,对其内的程序代码进行检查。如果try语句内的代码出现异常,catch语句负责捕获,并在catch语句内做适当处理。

finally语句 
finally语句紧跟在try-catch语句之后,不论在try语句中是否发生了异常,finally语句总会被无条件的执行。

    • 异常类

      1 用户可以自己定义异常类,只须继承Exception类即可;然后规定哪些方法产生这样的异常。

      2 如果用户想抛出用户自定义的异常类对象,应使用”throw”关键字;

      3 如果想抛出自定义异常对象,则一定要将所调用的方法定义为可抛出异常的方法。

posted @ 2017-03-29 22:24  北冥有魚其名為鯤  阅读(168)  评论(0编辑  收藏  举报