您的位置:首页 > 其它

面向对象-类与对象、关键字、异常使用

2017-03-23 14:43 176 查看
*****--------------面向对象课程大纲-----------*****
面向对象概述

类的构造方法
静态变量、常量和方法
类的主方法
对象
类的继承
object类
对象类型的转换
使用instanceof操作符判断
方法的重载
多态
抽象类与接口
Java类包
final
内部类
异常概述
处理程序异常错误
Java常见异常
自定义异常
在方法中抛出异常
运行时异常
异常的使用原则
======================================================================
<一>面向对象概述

概述:现实世界中所有的事物都是对象,对象都具有某些特征,并展现某些行为
对象的两个要素:
(1)属性 :用于描述对象静态特性(结构特性)的一个数据项。如描述一个人可用姓名、性别、身份证号等属性。
(2)方法(也称服务):用于描述对象动态特性(行为特性)的一个操作系列。如每个人都具有工作、学习等行为特性。

<二>类的概念
(1)同一类中的对象有相同的属性(也称为成员变量,它描述该类的静态特性或结构特性)
(2)同一类中的对象有相同的方法(也称服务,它描述该类的行为特性或动态特性)
(3)同一类中的对象遵守相同的语义规则。(共同的约束或规则)

<三>类与对象
1.对象:对象表示现实世界中某个具体的事物
对象具有两方面的含义:
(1)在现实世界中:是客观世界中的一个实体
(2)在计算机世界中:是一个可标识的存储区域
2.类(class):类是具有共同属性和行为的对象的抽象
Java类的基本语法:
<修饰符> class <类名>{
[<属性声明>]
[<构造器声明>]
[<方法声明>]
}
注:1.<类名>可以是任何合法的标识符,并且是所声明类的名字。
2.有几种可使用的<修饰符>,但现在只使用public,声明类可被任
意访问。
3.类的正文声明了与类相关的数据属性、构造器和方法的集合。

<四>面向对象
类是由属性(成员变量)和方法(成员方法)组成的 。
创建对象步骤:
1.设计类:设计成员变量和成员方法
2.通过类,去创建类的对象
3.通过“对象.属性(成员变量)” 或者“对象.方法 ”
来调用,完成相应的功能。

例:人类
特征:能直立行走,制作并使用工具高级动物
属性:名字、年龄、性别、身高等等
行为:制作使用工具、工作、吃饭、睡觉等等

成员变量(字段、属性):定义在类里面,并在方法外的变量。

<五>声明方法

方法的基本语法:

<修饰符> <返回类型> <名称>([<参数表>]){
[<语句>]
}

注:
1.<修饰符>是可选项,并可有很多不同的修饰符,包括public、protected和private等。public访问修 饰符表明可从其他代码调用该方法。private表明方法只能在由该类中其他方法调用。
2.<名称>可以是任何合法的标识符,但限制使用那些已经在使用的名称。

<六>类、对象与方法(步骤)

1、设计类:设计成员变量和成员方法

语法:class 类名{ }

例:class Person{//类
String name;//成员变量
void speak(){//成员方法
System.out.println(name);
}
}
2、通过类,去创建类的对象
语法 : 类名 对象名称=new 类名();
例 : Person p=new Person();

解析:Person:创建Person类的实例对象,
p:对象的引用,
new Person():实例化Person对象,调用构造方法Person()
=:Person在内存中的地址赋值给P,所以可以通过变量p引
用对象访问对象成员(对象被实例化后,jvm自动为其成
员变量赋初值)

内存:根据数据类型划分内存空间;new的空间

例:

public class Ch01{
public static void main(String[] args){
Person p=new Person();//创建P对象并实例化
}
}
class Person{//类
String name;//成员变量
void speak(){//成员方法
System.out.println(name);
}

}

3、通过“对象.属性(成员变量)” 或者“对象.方法 ”来调用,完成相应的功能。
public class Ch01{
public static void main(String[] args){
Person p=new Person();//创建P对象并实例化
p.speak();//访问对象的成员,调用speak()方法
}
}
class Person{//类
String name;//成员变量
void speak(){//成员方法
System.out.println(name);
}
}

<七>构造函数特点

构造函数作用:
(1)完成类对象的初始化工作,即初始化成员变量

(2)构造函数的名称必须与类名相同

(3)构造器没有返回值并且不可被继承

(4)一般将构造函数的修饰符声明为public

(5)构造函数中不能有return语句

1、一个类可以定义多个不同的构造方法

2、每个类都有自己默认构造方法,如果没有定义,系统会自动生成
若定义,则直接覆盖
例:public Person(){
// 默认构造方法
}

<八>有无参数的构造函数

1.构造函数的参数:

(1)参数表与方法声明中的一样。可以像方法一样向构造函数传递参数。
(2)构造函数可以有0个、1个或者多个参数。

2.无参数的构造函数:

(1)没有构造函数——使用默认的构造函数(没有参数,没有方法体)

(2)如果使用没有参数的构造函数,则创建的对象具有相同的初始值

<九>构造函数的重载
一个类可以有多个构造函数,叫做构造函数的重载。条件(满足其一):
(1)参数的个数不同
(2)参数的类型不同

<十>构造函数的使用

(1)不能由编程人员显式调用。
(2)在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。
(3)构造函数只能和new关键字一起使用。
格式:类名 对象名=new 构造函数名称(成员变量的初始值)
构造函数小结:
(1)构造函数(方法)名和类名相同
(2)构造方法没有返回值(void)
(3)主要作用是完成新对象的初始化
(4)在创建新对象时,系统自动调用该类的构造方法
(5)一个类可以有多个构造方法(参数个数和类型不同)
(6)每个类都有一个默认的构造方法
注:构造方法的主要作用:初始化成员变量(属性)
<十一>this关键字
作用:区分成员变量(属性)
原因:java虚拟机会给每个对象分配this代表当前对象

this注意事项:只能在类定义中使用(包括打印,如:this.name=name:this.name属于成员变量)
<十二>类变量static/类方法
1.定义:类变量是gailei的所有对象共享的变量
2.语法:访问修饰符 static 数据类型 变量名;
3.访问:(1)类名.类变量名;(2)对象名.类变量名
4.类变量原则上用类方法去访问
注:静态变量区不能访问非静态变量,非静态则都可去访问.
5.类变量与实例变量的区别:
(1)加上static称为类变量或静态变量
(2)类变量是与类相关的公共属性
(3)实例变量属于每个对象个体的属性
(4)类变量可以通过类名.类变量名直接访问
<十二>面向对象四大特征(封装、继承、多态、加抽象包含)
封装

(1)定义:数据被保护在内部
(2)封装思想:属性全部为私有
通过1个成员方法去控制和访问私有属性
(3)访问控制修饰符
定义:控制方法和变量的访问权限
public:公开
protected:受保护
default:默认
private:私有
2.抽象:
(1)概念:定义类将共有的属性和行为提取出来,形成1个模板(类),称为抽象
(2)抽象类:只能被继承,不能实例化的类。
(3)定义格式:
abstract class 类名{
abstract 返回值类型 方法名([参数表]);
… }(4)说明:

*抽象类中可以包含抽象和非抽象方法*也可以不包含抽象方法和非抽象方法*只要有一个抽象方法,就是抽象类*不能创建抽象类的对象 (抽象类不能被实例化)*使用时必须用其创建子类*子类可以定义自己的成员变量及方法,但必须将父类中所有抽象的方法代码写完*如果子类只是实现了部分抽象的方法,则该类仍是抽象类3.异常分类(1)Java程序运行过程中所发生的异常事件可分为两类:(Error: JVM系统内部错误、资源耗尽等严重情况((Exception: 其它因编程错误或偶然的外在因素导致的一般性问题,§例如: 空指针访问 试图读取不存在的文件 网络连接中断4.异常处理机制(1)捕获异常:在Java中如果需要处理异常,必须先对异常进行捕获,然后再对异常情况进行处理。使用try和catch关键字即可,结构如下:try{}catch(){}finally{}try块包围的代码说明这段代码可能会发生异常,一旦发生异常,异常便会被catch捕获到,然后需要在catch块中进行异常处理,finaly块中的代码一定会执行

(2)抛出异常:任何Java代码都可以抛出异常,如:自己编写的代码、来自Java开发环境包中代码,或者Java运行时系统。无论是谁,都可以通过Java的throw语句抛出异常。从方法中抛出的任何异常都必须使用throws子句。在方法声明上使用throws来表示该方法会有异常抛出,在方法体中使用throw来表示可能会发生的异常
5.自定义异常
使用Java内置的异常类可以描述在编程时出现的大部分异常情况。除此之外,
用户还可以自定义异常。用户自定义异常类,只需继承Exception类即可。
在程序中使用自定义异常类,大体可分为以下几个步骤。–创建自定义异常类。
–在方法中通过throw关键字抛出异常对象。
–如果在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。
–在出现异常方法的调用者中捕获并处理异常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息