extends关键字的使用

今天来来说说面向对象的核心三大特性,封装,继承,多态.。以类为载体,将对象的属性和行为 封装起来的载体就是类.

类提供了保护机制。提供了数据的安全.封装是面向的核心思想.

下面我们通过实际一个简单的实例来说说类的封装.

下面还是来看看代码吧.我们来模拟餐馆点菜的场景来说说类的封装.

package oop2;

public class extendsTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
       String cookName="jack chen";
       System.out.println("*******请让厨师为我做一份香辣肉丝******");
       System.out.println(cookName+"切辣椒");
       System.out.println(cookName+"洗蔬菜");
       System.out.println(cookName+"烹饪香辣肉丝 ");
       
       System.out.println("*******请问厨师你叫什么名字*******");
       System.out.println(cookName);
       
       System.out.println("*******请让厨师在给我切一点辣椒******");
       System.out.println(cookName+"切辣椒");
      
       
	}
	
	

上面的代码就是餐馆点菜的场景,上面的代码非常的不安全,任何人都可以从修改其代码。从客观的角度来将,厨师的行为应该是不会受到我们顾客的控制.在这里,我模拟可以将厨师作为一个类进行封装,代码如下.

package oop2;

public class Cooker {
	String name;

	public Cooker() {
		// TODO Auto-generated constructor stub
		name="jack chen";
		
	}
	void cutppper() {
		System.out.println(name+"切辣椒");
	}
	void washvetetables() {
		System.out.println(name+"洗蔬菜");	
	}
	void cooking(String dish) {
		cutppper();
		washvetetables();
		System.out.println(name+"开始烹饪"+dish);
	}

}

上面的 代码,就是对厨师的 类进行的一个封装.将厨师类作为一个整体,进行封装,我们能在来看看,顾客和厨师的交互的代码.

package oop2;

public class extendsTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
        //创建一个厨师类的对象.
		Cooker jack=new Cooker();
       System.out.println("*******请让厨师为我做一份香辣肉丝******");
       jack.cooking("香辣肉丝");
       
       System.out.println("*******请问厨师你叫什么名字*******");
       System.out.println(jack.name);
       
       System.out.println("*******请让厨师在给我切一点辣椒******");
       jack.cutppper();
       
       
       
	}
	
	

}

看看,我们的场景并没有该改变,但是我们的需求也没有改变.但是这次,我们对厨师类进行了一次的封装.将厨师的属性和行为进行了封装以类为载体进行了封装.只是提供了外部的接口供顾客使用。这样顾客是看不到类里面的东西的,从而大大的 保证了数据的安全性。

当然,我么可以这样的理解,厨师的类的接口本不该提供给顾客,而是我们的服务员。这样,我们就可以进行了2次的封装。

2次封装的原理和上面是一样的,大家可以尝试的看看,这里,我就不再多说了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值