JAVA 继承基本类、抽象类、接口介绍

2016-02-19 11:39 2 1 收藏

有了下面这个JAVA 继承基本类、抽象类、接口介绍教程,不懂JAVA 继承基本类、抽象类、接口介绍的也能装懂了,赶紧get起来装逼一下吧!

【 tulaoshi.com - 编程语言 】

封装:就是把一些属性和方法封装到一个类里。
继承:就如子类继承父类的一些属性和方法。
多态:就如一个父类有多个不同特色的子类。
这里我就不多讲解,下面我主要说明一个继承。继承是OOP(面向对象)的一个特色,java只支持单继承(如果继承两个有同样方法的父类,那么就不知道继承到那个父类的,所以java只支持单继承)。继承是java的一个特色,我们用的所以类都继承Objict类,所以就要Object类的方法,如toString()、getClass()、wait()……所以我们建立的类都有父类。

Java中一般有三种类:

基本类:也就是一般的类(一般所说的类就是基本类),是对象的模板,是属性和方法的集合。可以继承其他基本类、抽象类、实现接口。
抽象类:有抽象方法的类(抽象方法就是该方法必须由继承来实现,本身只定义,不实现)。抽象类可以有一个或多个抽象方法,他是基本类和接口类的过度。
接口类:一般叫做接口,该类中的所有方法都是抽象方法,该类的方法本身只定义不实现。
抽象类和接口一个由一个由定义,接口中的所以方法都是抽象方法,而抽象类有部分方法是自身实现了的,一些只定义不实现。

基本类的定义:

代码如下:

public class Fruit {
public void price() {
System.out.println("水果价格");
}
public void weight() {
System.out.println("水果重量");
}
}

抽象类的定义:
代码如下:

public abstract class Fruit {
public void price() {
System.out.println("水果价格");
}
public abstract void weight();
}

接口类的定义:
代码如下:

public interface Fruit {
public void price();
public void weight() ;
}

从上面我们可以看出接口就是抽象类的升级版,由于该类的方法全是抽象方法,所以把abstract换成interface。而接口的方法必须由子类才能实现。
继承

继承基本类,可以继承父类的方法,也可以从些,也可以扩充。下面是实现接口基本类的类:
代码如下:

public class Apple extends Fruit {

}

该类中就有Fruit基本类中的两个方法:price()和weight();

继承抽象类,必须实现抽象类的抽象方法,可以修改父类的方法,和添加方法。下面是继承抽象类的类:
代码如下:

public class Apple extends Fruit {
@Override
public void weight() {
System.out.println("水果重量");
}
}

该类继承类Fruit的price()方法,同时实现了Fruit抽象类的weight()方法。
继承接口类(也就实现接口),必须实现接口类的所有的抽象类和添加了。下面是继承接口的类:

代码如下:

public class Aple implements Fruit {
@Override
public void price() {
System.out.println("水果价格");
}
@Override
public void weight() {
System.out.println("水果重量");
}
}


该类是实现Fruit接口的所以抽象方法。

Java只支持单继承(继承基本类和抽象类),但是我们可以用接口来实现(多继承接口来实现)
如:public class Apple extends Fruit implements Fruit1, Fruit2{}
一般我们继承基本类和抽象类用extends关键字,实现接口类的继承用implements关键字。其实继承是很简单的,可以就是没有弄清这两个关键字,当我们弄清楚也就是比较简单的。

接口也可以继承接口如:public interface Fruit1 extends Fruit {}这是接口中的多重继承,同理抽象类和基本类也同理。如果我们把基本类添加final修饰,也就定义该类不被继承,该类不能作为父类。同时基本类的方法可以用public 、private、proptected来修饰方法,用final来阻止继承该方法。

这里只是自己的理解,有些地方时用词不当的,只是觉得这样用词更好的理解,请大家谅解。有些地方由于不是这里的重点,没有讲清楚,希望大家通过其他方式了解。

来源:https://www.tulaoshi.com/n/20160219/1598077.html

延伸阅读
标签: Java JAVA基础
计算机学院研二的兄弟与我讨论Java,一见面,几个问题全是关于接口,接口有什么用?为什么要用接口?什么时候该使用接口?很庆幸他们不是问我Java如何连接SQL Server,或者是如何开发J2EE应用,这类问题有杀伤力,避之则吉。今年计算机学院本科有个毕业设计课题是做J2ME,选这个题目的学生在5月末都还在苦着脸研究java.util.*这...
       Java是一种面向对象(OOP)的编程语言;在Java中,面向对象是以类的形式出现的,而对象则是类的实例,所以要学习Java的类首先必须了解面向对象。面向对象编程不同于过程语言或结构化程序设计,他存在对象这个概念,面向对象中的对象不仅是数据结构,还包含和数据结构有关的方法。 一:类 1.类...
标签: Web开发
/* +-------------------------------------------------------------------------------+ | = 本文为Haohappy读Core PHP Programming | = 中Classes and Objects一章的笔记 | = 翻译为主+个人心得 | = 为避免可能发生的不必要的麻烦请勿转载,谢谢 | = 欢迎批评指正,希望和所有PHP爱好者共同进步! | = ...
标签: Web开发
面向对象程序通过类的分层结构构建起来. 在单重继承语言如PHP中, 类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类. 当然,可能存在多个根类,用来实现不同的功能. 在一个良好设计的体系中,每个根类都应该有一个有用的接口, 可以被应用代码所使用. 如果我们的应用代码被设计成与根类一起工作,那么它也可...
Interfaces 接口 在软件工程中,由一份“契约”规定来自不同的开发小组的软件之间如何相互作用是非常常见的。每个小组都可以在不知道别的组的代码的前提下独立开发自己的代码。Java中的interface就是这样的一份“契约”。 举个例子,假设在未来社会有一种智能汽车,它可以在自动运载旅客而不需要人工操作。汽车生产商开发了软件(当然是用Java...

经验教程

518

收藏

48
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部