JAVA基础 面向对象下(2)(案例+总结+代码描述)

文章目录


前言

面向对象最后一篇讲述。打算明天开始Java集合知识点。这个也非常的重要。必学内容啊。加油一起冲冲冲。。。最近在做web大作业淘宝首面,过几天做好给大家把代码发上来参考参考。有什么不足的地方还要请大家多多指教。。。


一、接口的实现

        1.案例描述

                练习目标

                        掌握如何实现接口

                需求分析

                        由于接口中的方法都是抽象方法,因此不能通过实例化对象的方式来调用接口中的方法。此时需 要定义一个类,并使用 implements 关键字实现接口中所有的方法。为了上初学者掌握如何实现接口, 本案例将设计一个类,使用关键字 implements 实现 Inter 接口中的方法。

                设计思路(实现原理)

                        1.设计名为 Inter 的接口,接口中定义一个初始值为 20 的 num 常量和 method()抽象方法。

                         2.编写 Inter 接口的实现类 InterImpl,使用 implements 关键字实现接口中的方法。

                        3.编写测试类 Example10,测试类中对接口的实现类进行实例化,并调用接口中的方法。

            2.案例实现

                编写接口 Inter,InterImpl 类使用 implements 实现了接口,代码

package Mianxiangduixiangxia;

interface Inter {
	int num = 20;
	void method();
}
// 使用implements关键字实现接口
class InterImpl implements Inter {
	void show() {
		System.out.println(num);
	}
	public void method() {
		System.out.println("InterImpl method");
	}
}

               

                定义测试类 Example10,代码如下

package Mianxiangduixiangxia;

public class Example10 {
	public static void main(String[] args) {
		//通过实现类实例化
		InterImpl ii = new InterImpl();
		ii.show();
		ii.method();
	}
}

                运行结果

                        

        3.案例总结

                 1.接口使用 interface 关键字来定义。

                2.接口没有构造方法,接口中的变量缺省都是使用 public static final 修饰的,即全局常量,接口中的 方法都是 public abstract 修饰的,即抽象方法。

                3.定义一个类,并使用 implements 关键字实现接口中的方法,一个类可以实现多个接口。

                4.由于接口中的方法都是抽象方法,因此不能直接通过实例化对象的方式来调用接口中的方法,需 要在类实现接口后借助类来间接实例化。

二、多态的使用

        1.案例描述

                练习目标

                       1.了解多态的概念、多态的好处和弊端

                        2.掌握如何实现多态

                需求分析

                       在 Java 中为了实现多态,允许使用一个父类类型的变量来引用一个子类类型的对象,根据被引用 子类对象特征的不同,得到不同的运行结果。多态提高代码了的扩展性和可维护性。为了帮助初学者 掌握如何实现多态,本案例将实现一个多态程序来演示如何实现多态。

                设计思路(实现原理)

                        1.编写 Animal 接口,接口中定义 sleep()方法。

                        2.Cat 类实现 Animal 接口的方法,并定义另一个方法 catchMouse()

                        3.编写测试类 Example13,使 Cat 对象指向父类 Animal 的引用 ,并通过该引用调用 sleep()方法

         2.案例实现

                       编写 Animal 接口及其实现类 Cat。代码

package Mianxiangduixiangxia;

interface Animal {
	void sleep();
}
class Cat implements Animal {
	void catchMouse() {
		System.out.println("抓老鼠");
	}
	public void sleep() {
		System.out.println("睡觉");
	}
}

                定义测试类 Example13,Cat 对象指向 Animal 引用,并使用父类 Animal 引用调用 sleep()方法。代码

package Mianxiangduixiangxia;

public class Example13 {
	public static void main(String[] args) {
		// 多态
		Animal animal = new Cat();
		animal.sleep();
	}
}

                运行结果

        ​​​​​​​        ​​​​​​​        

         3.案例总结

                1.多态是指对象在不同时刻表现出来的不同状态,在 Java 中,允许使用一个父类类型的变量来引用 一个子类类型的对象。

                2.多态的前提: 

                        (1) 要有继承关系。

                         (2) 要有方法重写。

                        (3) 要有父类引用指向子类对象。

                3.多态的好处是提高代码的扩展性和可维护性。

                4.多态的弊端是父类或者接口只能调用自己具备的成员,不能访问子类特有的成员。

三、try...catch语句

         1.案例描述

                练习目标

                       1.掌握如何使用 try...catch

                需求分析

                      Java 中提供了一种对异常进行处理的方式——异常捕获,异常捕获通常使用 try…catch 语句。为 了让初学者熟悉 try…catch 语句,本案例将演示如何使用 try...catch 语句处理遍历时可能出现的数组角 标越界异常。

                设计思路(实现原理)

                       1. 编写测试类 Example16,

                        2.在类 Example16 中定义名为 arr 的 int 类型一维数组,遍历数组输出每次遍历出的值,结束输 出“over”。

                        3.使用 try...catch 语句处理遍历时可能出现的数组角标越界异常,如果出现异常输出“角标越界”。

        2.案例实现

                代码:

package Mianxiangduixiangxia;

public class Example16 {
	public static void main(String[] args) {
		int[] arr = { 1, 2, 3, 4, 5 };
		try {
			for (int x = 0; x <= arr.length; x++) {
				System.out.println(arr[x]);
			}
			System.out.println("程序继续向下执行...");
		} catch (ArrayIndexOutOfBoundsException e) {
			System.out.println("角标越界");
		}
		System.out.println("over");
	}
}

                运行结果

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

          3.案例总结

                1.try 代码块中编写可能发生异常的 Java 语句,catch 代码块中编写针对异常进行处理的代码。在 try 代码块中,发生异常语句后面的代码是不会被执行的。

                2.可能发生多个异常时,可以使用多个 try...catch 或者用一个 try 多个 catch。                 3.Throwable:是异常体系的超类. |--Error 重大的错误,这个问题发生后,一般我们处理不了,一般不处理,而是要程序进行 30 修正 。(内存溢出) |--Exception 可以处理的问题,这个问题需要我们编写针对性的代码进行处理。(异常处理)


 

 

总结

明天写一篇集合知识点。。。

  • 5
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心态还需努力呀

你的鼓励将是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值