`
幼儿园扛把子
  • 浏览: 1450 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

类,抽象类,接口三者的区别

阅读更多
  类的表现形式
Java中类的定义:
public class A{} 

类的特点:
  1)类中的属性可以是成员属性,也可以是类属性
   2)类中的方法必须是有方法体的方法(类中的方法必须全部是具体的方法[有方法体的方法]),可以是成员方法,也可以是类方法
   3)每个类必须至少有一个构造方法,默认的是一个无参的构造方法,可以调用构造方法创造对对象
      一个类只能继承一个父类,单根继承
Java代码 
public class A{} 
public class B extends A{} 
 
抽象类
   表现形式:
Java中抽象类的定义: 
public abstract class A{} 

public abstract class A1{
private String name;
public void aa(){
}
public abstract void bb();

}

抽象类的特点:
   1)抽象类中的属性和类一样,可以是成员属性,也可以是类属性
   2)抽象类中的方法可以是抽象方法,也可以是具体的成员方法
   3)抽象类中的方法需要定义访问限定符
   4)抽象类有构造方法,默认的是一个无参的构造方法,但不能用来创建对象(就是不能new 一个对象)
   5)抽象类是用来充当父类,给子类去继承和扩展的
 
抽象类的继承:
    一个类只能继承一个抽象类
        public class B extends A{}
 
接口(interface)
表现形式:
Java中接口的定义:
public interface A{} 

接口的特点:
  1)接口中的属性必须是公共的常量(必须赋初始值)
  2)接口中的属性默认是public static final,必须是public static final
  3)接口中的方法必须全部只能是抽象方法
  4)接口中的方法默认是public abstract ,必须是public abstract
  5)接口中的方法的访问限定符默认public,必须是public
  6)接口没有构造方法,不能创造对象(就是不能new 一个对象)
  7)接口用来充当父类,给子类去扩展的

还有接口的实现:
  
Java代码 
public class A implements B{} 

PS:
1.不管是继承类,还是抽象类,还是接口
如果要重写父类的方法,都不能够减小方法的访问限定范围
public   protected      默认不写       private

2.常量的定义
public static final 数据类型  变量名 = 值;


3.如果是抽象类继承抽象类,可以不用重写继承到的方法

4.抽象类实现接口,可以不用重写接口中的方法

5.接口可以继承接口,不能重写继承到的方法

6.类与类的继承,类与抽象类的继承都是单根继承
public class A{}
public class B extends A{}

7.Java中最顶层的父类是 Object类,所有的类,包括数组都是默认是Object的子类

8.一个接口可以继承多个接口
public interface C{}
public interface D{}
public interface E extends C,D{}


9.一个类[抽象类]可以实现多个接口
public class F implements C,D{}


10.一个类[抽象类]可以先继承一个类,再实现多个接口
public class G extends A implements C,D{}

G a1 = new G();
A a2 = new G();
C a3 = new G();
D a4 = new G();



11.子类继承父类,在子类的构造方法中,默认会调用父类的无参数的构造方法
如果父类重载了构造方法,无参构造方法已经失效
分享到:
评论

相关推荐

    java抽象类与接口区别

    本文将深入探讨Java抽象类与接口的区别,帮助初学者更深刻地理解这两个概念。 #### 二、理解抽象类与接口的基本概念 ##### 抽象类 - **定义**:抽象类是一种特殊的类,它不能被实例化。抽象类通常包含一个或多个...

    JAVA 继承基本类、抽象类、接口区别与联系

    ### JAVA继承基本类、抽象类、接口的区别与联系 #### 一、概述 在Java语言中,类(Class)的设计是面向对象编程的核心之一。Java提供了三种方式来扩展类的功能:基本类、抽象类和接口。这三者之间既有相似之处,也...

    抽象类与接口的区别

    ### 抽象类与接口的区别 #### 一、理解抽象类与接口的基本概念 在面向对象编程中,抽象类和接口都是重要的概念,用于描述共有的特性或行为,但它们在实现方式和用途上有所不同。 **抽象类**: - **定义**:抽象类...

    抽象类和接口的区别

    ### 抽象类与接口的区别 在面向对象编程中,抽象类和接口是两种非常重要的概念,它们在软件设计和实现过程中发挥着不可替代的作用。本文将深入探讨这两种概念的区别,帮助开发者更好地理解和运用它们。 #### 一、...

    Java中抽象类和接口的区别与作用详解

    ### Java中抽象类和接口的区别与作用详解 #### 一、引言 在Java编程语言中,`abstract class`和`interface`是两种用于定义抽象类的重要机制。这两种机制不仅支持了Java的强大面向对象特性,而且也在实际开发过程中...

    简述抽象类和接口的区别-java接口和抽象类异同.docx

    ### 抽象类与接口的区别 #### 一、定义与特性 **抽象类**: - 抽象类是一种特殊的类,它可以包含抽象方法(没有具体实现的方法)和具体方法(有具体实现的方法)。 - 抽象类不能被实例化,只能作为其他类的父类。 ...

    java实验四 对象和类(抽象类、接口与包).doc

    通过本实验,学习者将熟练掌握抽象类、接口、包的概念,并了解如何使用继承、多态、抽象类、接口、内部类等技术来设计和实现面向对象的程序。 一、抽象类 抽象类是 Java 中的一种特殊类,它不能被实例化,必须被...

    浅析高职教学之Java抽象类与接口.pdf

    浅析高职教学之Java抽象类与接口 本文对Java抽象类和接口的区别与联系进行了详细的分析,并着重讨论了...第三,从语法定义的角度看,二者的区别在于抽象类可以包含变量和方法的实现,而接口只能包含常量和方法的定义。

    UML类图中的类 抽象类,具体类,主动类等

    综上所述,UML类图中的类是系统建模的关键元素,它们通过抽象类和具体类的区分来表达层次结构,通过主动类和非主动类来描述行为发起者和接收者。属性和操作则构成了类的核心特性,帮助我们理解和设计系统的结构和...

    JAVA设计模式(抽象类与适配器模式)

    今天我们要探讨的是JAVA设计中的两个重要模式:抽象类与适配器模式。 首先,我们来理解一下“抽象”。抽象是面向对象编程的核心概念之一,它帮助我们处理对象的复杂性。在Java中,抽象通常通过抽象类来实现。抽象类...

    C#抽象类和接口的区别分析

    很多C#的初学者在编程时都容易把抽象类和接口搞混,本文就为大家从概念上讲解抽象类和接口的区别: 一、抽象类: 含有abstract修饰符的class即为抽象类,抽象类是特殊的类,只是不能被实例化,可以创建一个变量,其...

    继承,虚函数,抽象类

    而抽象类则作为接口,规定了子类必须实现的成员,进一步强化了继承的结构。 在学习和应用这些概念时,有几个关键点需要注意: 1. 继承可能导致"菱形问题",即多重继承时可能出现的二义性。C++通过虚继承解决了这个...

    工厂模式、接口、抽象类的例子

    本示例中的“工厂模式、接口、抽象类”是面向对象设计中的关键概念,让我们逐一深入探讨。 首先,**工厂模式**是一种创建型设计模式,它提供了一种创建对象的最佳方式,将对象的创建过程封装起来,使得代码更加灵活...

    DLL导出类的三种方法,导出接口类,导出类指针,导出类,不建议使用导出类

    本篇将详细讲解DLL导出类的三种常见方法:导出接口类、导出类指针以及导出类,并说明为什么通常不建议直接导出类。 1. 导出接口类 接口类(Interface Class)是一种只包含纯虚函数的抽象基类,不包含任何数据成员...

    实验项目C、面向抽象和面向接口编程

    总结起来,这个实验项目通过实际操作,让学习者深入理解了Java中的继承、抽象类、接口、多态等概念,以及如何利用这些技术进行面向抽象和面向接口的编程,从而达到代码的高内聚、低耦合,提升软件的可扩展性和可维护...

    Visual C# 2005开发技术PDF,抽象类、多态及接口,处理异常和错误,XML编程,非常好的教程.

    在这个PDF教程中,读者将深入理解C# 2005的核心概念,包括抽象类、多态、接口、异常处理和XML编程。 首先,让我们来探讨抽象类。在面向对象编程中,抽象类是一种不能被实例化的特殊类,它为其他类提供了一个共享的...

    c#接口的意义 学习心得 读书笔记 (彻底弄清楚接口,轻松使用接口)

    六、接口与抽象类的区别 接口和抽象类都是抽象的类型,但它们有以下区别: 1. 实现部分:抽象类可以包含实现部分,而接口不可以。 2. 字段:抽象类可以包含字段,而接口不可以。 3. 继承:抽象类可以继承自其他类...

    三层架构 + 抽象工厂类实例

    抽象工厂模式是一种创建型设计模式,它提供一个创建对象的接口,但允许子类决定实例化哪一个类。这使得程序可以在不指定具体类的情况下引用对象。在三层架构中,抽象工厂可以用于在不同层之间创建相关对象,例如在...

    C#继承,接口,多态的实现与区别

    后者则依赖于方法重写(Overriding)和抽象类及接口,使得子类可以根据需要提供不同的实现。 1. **方法重载**:在同一个类中,可以有多个方法名相同但参数列表不同的方法,编译器根据传入的参数类型和数量选择合适...

    工厂接口虚函数抽象函数单例DEMO

    在DEMO中,可能有一个抽象类(如`AbstractProduct`)定义了一些核心行为,而具体的业务实体类(如`ConcreteProduct`)继承并实现这些行为。 4. **单例模式**:单例模式确保一个类只有一个实例,并提供全局访问点。...

Global site tag (gtag.js) - Google Analytics