面向对象
来源:互联网 发布:代聊都用什么软件 编辑:程序博客网 时间:2024/05/17 06:49
面向对象
特性:
1.封装
提高程序的健壮性.
成员变量私有,提供共有的get和set方法.
2.继承
3.多态
类:
class{
私有成员变量
静态成员变量
get和set方法
成员方法
静态成员方法
构造代码块
构造函数
static{
}
}
对象:
匿名对象
new 关键字创建对象.
new 类名(); 返回对象的引用.
构造函数:
用户初始化对象.
特点:和类名一致.没有返回值
自定义类没有构造函数,系统默认有一个.
如果自定义了,系统默认没有了.
一个类的多个构造函数是以重载的形式体现的.
构造函数间的调用通过this.
构造代码块
给所有对象初始化.
和构造函数相比,构造函数时给对应的对象初始化.
this
可以用于却分成员变量的和局部变量.
this代表所在函数所属对象的引用(根据上下文).
this构造函数的相互调用
static
对象和对象之间出现了重复的数据.
static 修饰成员变量
被所有对象所共享.
static 修饰方法
可以直接通过类名来调用.
静态方法不能访问非静态成员变量
因为声明周期的原因.
例如: Arrays,Math 工具类 大量使用了静态方法.
继承
提高代码复用性是Java.描述了类和类之间的关系.
类和类之间有关系,需要描述这些关系,类和类之间出现了重复数据.
例如: Person类,Student类.
Student is a Person (学生是一个人)
继承的前提:
类和类之间符合is a
extends
实现继承.
父类
被继承的类
子类
继承的类.
例如: Student extends Person
注意: 私有的不能被继承.
super
用于访问父类的构造函数.
在构造函数中,this和super不能同时存在构造函数的第一行.
super 还可以访问父类的成员(方法和变量)
注意:Java只支持单继承.
重写
前提: 子父类中(继承或者实现).
存在同名的函数.
子类可以对父类的功能进行增强.
规则:
函数名相同
参数列表一致.
子类不能比父类抛出更多异常.
返回值类型:
子类的返回值类型必须等于或者小于父类的返回值类型.
抽象类
abstract
规则:
如果一个类中存在抽象方法.类必须是抽象类.
抽象类中可以没有抽象方法.
抽象类可以有构造函数.
不能创建对象.
子类继承抽象类
要么实现抽象方法.
要么声明为抽象类.
接口
interface 声明
implements 实现
特点:
成员变量: public static final
成员方法: public abstract
子类实现接口:
必须实现接口中的方法.
接口没有构造函数.
接口和接口之间,通过继承,接口和接口可以实现多继承.
多态
父类引用接收了子类对象.
使用的场景:
集合
Collection coll=new ArrayList();
coll.add(Object obj);
List
Object get(int i);
多态作为形参
1:定义功能(函数),该函数可以输出任何图形的面积和周长.根据输出任何图形的面积和周长。
父类: 图形类. 圆,矩形.
多态作为方法的返回值类型.
2:定义一个汽车工厂类,获取任意一辆车对象,该工厂生产的汽车随机.
异常
内部类
特性:
1.封装
提高程序的健壮性.
成员变量私有,提供共有的get和set方法.
2.继承
3.多态
类:
class{
私有成员变量
静态成员变量
get和set方法
成员方法
静态成员方法
构造代码块
构造函数
static{
}
}
对象:
匿名对象
new 关键字创建对象.
new 类名(); 返回对象的引用.
构造函数:
用户初始化对象.
特点:和类名一致.没有返回值
自定义类没有构造函数,系统默认有一个.
如果自定义了,系统默认没有了.
一个类的多个构造函数是以重载的形式体现的.
构造函数间的调用通过this.
构造代码块
给所有对象初始化.
和构造函数相比,构造函数时给对应的对象初始化.
this
可以用于却分成员变量的和局部变量.
this代表所在函数所属对象的引用(根据上下文).
this构造函数的相互调用
static
对象和对象之间出现了重复的数据.
static 修饰成员变量
被所有对象所共享.
static 修饰方法
可以直接通过类名来调用.
静态方法不能访问非静态成员变量
因为声明周期的原因.
例如: Arrays,Math 工具类 大量使用了静态方法.
继承
提高代码复用性是Java.描述了类和类之间的关系.
类和类之间有关系,需要描述这些关系,类和类之间出现了重复数据.
例如: Person类,Student类.
Student is a Person (学生是一个人)
继承的前提:
类和类之间符合is a
extends
实现继承.
父类
被继承的类
子类
继承的类.
例如: Student extends Person
注意: 私有的不能被继承.
super
用于访问父类的构造函数.
在构造函数中,this和super不能同时存在构造函数的第一行.
super 还可以访问父类的成员(方法和变量)
注意:Java只支持单继承.
重写
前提: 子父类中(继承或者实现).
存在同名的函数.
子类可以对父类的功能进行增强.
规则:
函数名相同
参数列表一致.
子类不能比父类抛出更多异常.
返回值类型:
子类的返回值类型必须等于或者小于父类的返回值类型.
抽象类
abstract
规则:
如果一个类中存在抽象方法.类必须是抽象类.
抽象类中可以没有抽象方法.
抽象类可以有构造函数.
不能创建对象.
子类继承抽象类
要么实现抽象方法.
要么声明为抽象类.
接口
interface 声明
implements 实现
特点:
成员变量: public static final
成员方法: public abstract
子类实现接口:
必须实现接口中的方法.
接口没有构造函数.
接口和接口之间,通过继承,接口和接口可以实现多继承.
多态
父类引用接收了子类对象.
使用的场景:
集合
Collection coll=new ArrayList();
coll.add(Object obj);
List
Object get(int i);
多态作为形参
1:定义功能(函数),该函数可以输出任何图形的面积和周长.根据输出任何图形的面积和周长。
父类: 图形类. 圆,矩形.
多态作为方法的返回值类型.
2:定义一个汽车工厂类,获取任意一辆车对象,该工厂生产的汽车随机.
异常
内部类
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- 面向对象
- Linux多进程和线程同步的几种方式
- Eclipse快捷键大全(转载)
- 2014百度校招开发测试工程师笔试题
- python的decode和encode
- c语言习题集
- 面向对象
- 使用JavaBean访问数据库
- 百度2014校招系统分析师笔试题(武汉站)
- linux下的C语言开发(makefile编写)
- 视频上传失败,大小超过了php限制
- 求二叉树的深度和宽度
- 2014百度校招PC客户端研发笔试题(西安站)
- 2014百度校招移动终端类笔试题(西安站)
- 百度2014校园招聘客户端开发笔试题(南京站)