Java面向对象必会的知识点--对象的特点总结
2015-07-16 23:05
681 查看
三大特点:继承、多态、封装;
Ⅰ、封装
⑴封装是指把对象的属性隐藏在对象的内部,不允许外部直接访问和修改。也是把过程和数据包围起来;
⑵封装的作用:①提高程序可复用性和可维护性②对象的数据封装特性还可以把对象的私有数据和公共数据分离开,保 护了私有数据,减少了可能的模块间干扰,达到降低程序复杂性、提高可控性的目的。
⑶实现封装的步骤:①把对象属性隐藏(设置类的成员变量使用private修饰符)②定义设置器③定义访问器④使用Eclipse完成封装
/** * @return running属性值,它代表汽车对象的行驶状态,true代表行驶中 */public boolean isRunning() {return running;}}编写主类,演示访问器与设置器的使用
Ⅱ、继承
⒈继承是指从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。类和类之间的继承关系可以用UML符号表示,其中父类又叫超类或基类,子类又叫派生类
。以现实生活中理解“它是一种关系”,例如轿车是一种汽车,而汽车又是一种交通工具
2.语法如下:
[修饰符] class 类名 extends 父类名3.例子如下:
Car类:
public class Car {
public String color ="黑色";//颜色
public int speed = 1;//速度
public int level;//档位
/**
* 换挡的方法
* @param num 档位参数
*/
public void gear(int num){
level=num;//档位
speed = 10*level*level;//变速
}
public void drive(){
System.out.println("我是一辆"+color+"的轿车");
System.out.println("现在以时速"+speed+"公里每小时的速度行驶中。");
System.out.println("车档位是:"+level+"挡");
}
}SaloonCar类:
Ⅲ、多态
1.多态的特征是表现出多种形态,具有多种实现方式。或者多态是具有表现多种形态的能力的特征。或者同一个实现接口,使用不同的实例而执行不同的操作。通过父类类型的引用,我们可以定义多态数组,多态方法等。
2.多态方法就是数组使用父类声明,而数组中的元素都是子类的实例对象,他们有父类同名的方法,但方法体可以不一样
创建一个四边形类
public class Quadrangle {
public void draw(){
System.out.println("绘制自身图形");
}
}
创建一个正方形
public class Square extends Quadrangle {
@Override
public void draw(){
System.out.println("--------------------");
System.out.println("| |");
System.out.println("| 正方形 |");
System.out.println("| |");
System.out.println("| |");
System.out.println("--------------------");
}
}
创建一个长方形类
public c
4000
lass Rectangle extends Quadrangle {
@Override
public void draw(){
System.out.println("--------------------");
System.out.println("| |");
System.out.println("| 长方形 |");
System.out.println("| |");
System.out.println("| |");
System.out.println("--------------------");
}
}
创建一个平行四边形类
public class Parallelogram extends Quadrangle {
@Override
public void draw(){
System.out.println(" ----------------");
System.out.println(" / /");
System.out.println(" / 平行四边形 /");
System.out.println(" / /");
System.out.println(" / /");
System.out.println(" -----------------");
}
}
创建一个主类
public class Demo {
public static void main(String[] args) {
Quadrangle[] quadrangles = new Quadrangle[3];
quadrangles[0] = new Square();
quadrangles[1] = new Rectangle();
quadrangles[2] = new Parallelogram();
for (Quadrangle obj : quadrangles) {
obj.draw();
}
}
}
Ⅰ、封装
⑴封装是指把对象的属性隐藏在对象的内部,不允许外部直接访问和修改。也是把过程和数据包围起来;
⑵封装的作用:①提高程序可复用性和可维护性②对象的数据封装特性还可以把对象的私有数据和公共数据分离开,保 护了私有数据,减少了可能的模块间干扰,达到降低程序复杂性、提高可控性的目的。
⑶实现封装的步骤:①把对象属性隐藏(设置类的成员变量使用private修饰符)②定义设置器③定义访问器④使用Eclipse完成封装
<span style="font-size:18px;">public class Car { private String color="黑色"; private boolean running; /**设置color属性值的设置器方法 * @param color 要设置的 color */ public void setColor(String color) { this.color = color; } <pre name="code" class="java"> /**running属性的访问器方法 * @param running 要设置的 running */ public void setRunning(boolean running) { this.running = running; } <pre name="code" class="java"> /** * color属性的访问器的方法 * @return color 颜色参数 */ public String getColor() { return color; }</span>
/** * @return running属性值,它代表汽车对象的行驶状态,true代表行驶中 */public boolean isRunning() {return running;}}编写主类,演示访问器与设置器的使用
<span style="font-size:18px;">public class Program { public static void main(String[] args) { Car whiteCar=new Car();//创建Car类的实例对象 whiteCar.setColor("红色");//修改该实例中color属性 whiteCar.setRunning(true);//设置car对象的行驶状态 System.out.println("color属性:"+whiteCar.getColor()); System.out.println("running属性:"+whiteCar.isRunning()); } } </span>
Ⅱ、继承
⒈继承是指从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。类和类之间的继承关系可以用UML符号表示,其中父类又叫超类或基类,子类又叫派生类
。以现实生活中理解“它是一种关系”,例如轿车是一种汽车,而汽车又是一种交通工具
2.语法如下:
[修饰符] class 类名 extends 父类名3.例子如下:
Car类:
public class Car {
public String color ="黑色";//颜色
public int speed = 1;//速度
public int level;//档位
/**
* 换挡的方法
* @param num 档位参数
*/
public void gear(int num){
level=num;//档位
speed = 10*level*level;//变速
}
public void drive(){
System.out.println("我是一辆"+color+"的轿车");
System.out.println("现在以时速"+speed+"公里每小时的速度行驶中。");
System.out.println("车档位是:"+level+"挡");
}
}SaloonCar类:
public class SaloonCar extends Car { }主类:
public class Program { public static void main(String[]args){ SaloonCar whileCar=new SaloonCar(); whileCar.color="红色"; whileCar.gear(4); whileCar.drive(); } }
Ⅲ、多态
1.多态的特征是表现出多种形态,具有多种实现方式。或者多态是具有表现多种形态的能力的特征。或者同一个实现接口,使用不同的实例而执行不同的操作。通过父类类型的引用,我们可以定义多态数组,多态方法等。
2.多态方法就是数组使用父类声明,而数组中的元素都是子类的实例对象,他们有父类同名的方法,但方法体可以不一样
创建一个四边形类
public class Quadrangle {
public void draw(){
System.out.println("绘制自身图形");
}
}
创建一个正方形
public class Square extends Quadrangle {
@Override
public void draw(){
System.out.println("--------------------");
System.out.println("| |");
System.out.println("| 正方形 |");
System.out.println("| |");
System.out.println("| |");
System.out.println("--------------------");
}
}
创建一个长方形类
public c
4000
lass Rectangle extends Quadrangle {
@Override
public void draw(){
System.out.println("--------------------");
System.out.println("| |");
System.out.println("| 长方形 |");
System.out.println("| |");
System.out.println("| |");
System.out.println("--------------------");
}
}
创建一个平行四边形类
public class Parallelogram extends Quadrangle {
@Override
public void draw(){
System.out.println(" ----------------");
System.out.println(" / /");
System.out.println(" / 平行四边形 /");
System.out.println(" / /");
System.out.println(" / /");
System.out.println(" -----------------");
}
}
创建一个主类
public class Demo {
public static void main(String[] args) {
Quadrangle[] quadrangles = new Quadrangle[3];
quadrangles[0] = new Square();
quadrangles[1] = new Rectangle();
quadrangles[2] = new Parallelogram();
for (Quadrangle obj : quadrangles) {
obj.draw();
}
}
}
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统