抽象方法

Java面试集合(六)

匿名 (未验证) 提交于 2019-12-02 20:41:15
什么是 abstract ,中文为抽象,从具体事物抽出,概括它们共同的方面,本质属性与关系等,称为抽象。 看不见,摸不着的东西叫做抽象,抽象是人们对世界万物的感觉,用特定的图像表达出来,要理解抽象的东西,就必需从内心感受它们。 抽象类的定义和使用格式 abstract class 类名{ 类体 } class 类名 extends 抽象类 { //实现全部抽象方法 } 抽象类,用 abstract 修饰的类为抽象类,一个类如果它的所有子类都重写了这个方法,那么给它添加抽象的声明,那么这个类就为抽象类。 那么这个抽象方法的类就为抽象类,具有抽象方法的类为抽象类,但抽象类不一定具有抽象方法, 抽象类中可以有构造方法,不能创建对象。 抽象类中如果有抽象方法,那么 子类继承这个抽象类之后,就必须要重写抽象类中的 所有抽象方法。 一个类用 abstract 进行修饰为抽象类,那么这个抽象类不能在用 final 来修饰了,抽象类是类对象的抽象集合,抽象类使用 abstract 关键字修饰, abstract 不能与 final 并列修饰同一个类。 对于抽象方法,不能在用 static 和 final 和 private 来修饰 在抽象类中具体 抽象的是属性和行为, 在抽象类中,含有抽象方法的类为抽象类,一定是抽象类,但抽象类中不一定含有抽象方法。 案例: //抽象类:作为抽象方法是可以重载的

接口和抽象方法的联系和区别

余生颓废 提交于 2019-12-02 19:42:41
一、相同点: 1、抽象方法和接口都不能被实例化,但可以定义抽象类和接口类型的引用。 二、不同点: 1、一个类继承抽象类需要实现其中的抽象方法,否则该类还是需要被声明为抽象类,当一个类实现了接口,就必须实现其所有方法。 2、接口相比于抽象类更抽象,抽象类中可以定义构造器,可以有抽象方法和实现方法,接口则没有构造方法,且方法全是抽象方法。 3、接口中的方法默认是public的,抽象类的方法没有限制 4、接口中定义的成员变量实际上都是常量(public static final),抽象类中的成员变量没有限制 5、抽象类不一定要有抽象方法,而有抽象方法的类必须声明为抽象类 ========================================================================================================== JDK8关于接口的新特性 :接口的静态方法和默认方法 在JDK8之前,interface之中可以定义变量和方法,变量必须是public、static、final的,方法必须时public、abstract的。由于这些修饰符都是默认的,所以在JDK8之前,下面的写法都是等价的。 public interface test { public static final int a = 1; int a_copy =

java设计模式--抽象工厂模式

不问归期 提交于 2019-12-02 19:36:27
工厂方法模式中只考虑一类产品的生成,如畜牧场只养动物,而抽象工厂模式考虑多等级产品的实现 1,定义:是一种为访问类提供一个创建一组相关或相互依赖对象的接口,且访问类无需指定所需要产品的具体类就能得到同组的不同等级的产品的模式结构。它是工厂方法模式的升级。 使用抽象工厂方式要满足以下条件   系统中有多个产品族,每个具体工厂创建同一族但属于不同等级结构的产品   系统一次只能消费其中的某一族产品,即同族产品一起使用。 抽象工厂模式具有工厂方法模式的优点,还有其他优点   可以在类的内部对产品族中相关联的多等级产品共同管理,而不必引入多个新的类来进行管理   当增加一个新产品族时,不需要修改原代码,满足开闭原则 缺点   当增加一个新的产品时,所有的工厂类都需要修改   来源: https://www.cnblogs.com/javadongx/p/11760902.html

接口和抽象类 / 类的异别

梦想与她 提交于 2019-12-02 18:56:13
1.接口与抽象类异别: 相同点:二者都是需要被继承和实现后才有实际意义,并且二者都有抽象类型。 不同点:抽象属于类,接口是一种新的数据类型;     抽象类中的属性,可以是变量和常量,而接口中的属性只能是常量;     抽象类中可以有抽象方法和普通方法;而接口中只能是抽象方法;     抽象类中的方法由继承他的类来实现,而接口中的抽象方法交给实现该接口的类; 2.接口与类的异同:     相同点:接口和类是数据类型,属性中都有常量,方法中都有抽象方法;     不同点:类中有变量也有常量,且方法需要实现,接口中只有常量,且方法只需声明;类中可以有抽象方法和普通方法,接口中只有抽象方法, 来源: https://www.cnblogs.com/zhangweigang/p/11758683.html

【值得一看】抽象类与接口区别与使用

你。 提交于 2019-12-02 16:47:16
抽象类、抽象方法简介 抽象类与接口 接口回调技术 理解接口:(为什么要用接口) 什么时候要用接口,什么时候使用抽象类? 用abstract修饰的类,即抽象类;用abstract修饰的方法,即抽象方法。 抽象方法 : 在面向对象编程语言中 抽象方法 指一些只有 方法 声明,而没有具体 方法 体的 方法 。 抽象方法 一般存在于 抽象 类或接口中。 抽象类 : 由一个或多个抽象方法的类叫做抽象类,抽象类暂时不能实例化(特殊手段除外!:匿名类) 例子: package com.my.animal; //动物类 public class Animal { String name;//名字 String color;//颜色 public Animal(String name,String color){ this.name = name; this.color = color; } public void run(){ System.out.println(name+"四条腿跑的很快!!!"); } } //狗类继承动物类 class Dog extends Animal{ public Dog(String name,String color){ super(name,color); } } //鱼类继承动物类 class Fish extends Animal{ public Fish

抽象类

百般思念 提交于 2019-12-02 16:38:30
4、抽象类案例 需求:开发团队中有程序员和经理两种角色,他们都有姓名、工资、工号等属性,都有工作的行为,经理还有奖金属性,请使用继承思想设计出上述需求的类,并分别创建对象使用。 package com.wang.duixiang; public class AbstractDemo03 { public static void main(String[] args) { TeamWorker t=new ItWorker(); t.setID("123456"); t.setName("王迎婧"); t.setSalary(7000); t.work(); System.out.println("-----------------------------------------"); Manager manager=new Manager(); manager.setID("654321"); manager.setName("fewof"); manager.setSalary(10000); manager.setBonus(3000); manager.work(); System.out.println("---------------------------------------------"); //快速实例化 ItWorker itWorker1=new

java知识基础篇(详细版)

自古美人都是妖i 提交于 2019-12-02 14:59:12
本文章为Java知识的基础篇,为Java知识点总结的前序部分。 1.java概述: 1991 年Sun公司的James Gosling(詹姆斯·高斯林)等人开始开发名称为 Oak的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;1994年将Oak语言更名为Java; 2.Java的三种技术架构: JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发; JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它两者的基础; JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序; 3.JDK: Java Development Kit,java的开发和运行环境,java的开发工具和jre。 4.JRE: Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。 5.配置环境变量: 是 java中 jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。 6.环境变量的配置: 1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdk

JavaSE学习08(抽象类和接口)

只愿长相守 提交于 2019-12-02 12:48:12
抽象类 1.抽象类描述 在java中,一个没有方法体的方法应该定义为抽象方法,包含该方法的类必须定义为抽象类。 2.抽象类的特点 抽象类和抽象方法必须用abstract关键字修饰。 public abstract class 类名 {} public abstract void eat(){}; 抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类。 抽象类不能示例化 抽象类要参照多态的方式,通过子类对象示例化,这叫抽象类多态。 抽象类的子类 要么重写抽象类中的所有抽象方法 要么子类是抽象类。 3.抽象类的成员特点 成员变量: 可以是变量也可以是常量 构造方法: 有构造方法,但是不能示例化,主要用于子类访问父类数据的初始化。 成员方法: 可以有抽象方法,限定子类必须完成某些动作,也可以有非抽象方法,提高代码复用性。 接口 1.接口概述 接口就是一种公共的规范标准,只要符合规范标准,大家都可以使用。 Java中的接口主要体现在 对行为的抽象 2.接口的特点 接口用关键字interface 修饰 public interface 接口名{} 类实现接口用implements表示, public class 类名implements 接口名{} 接口不能示例化 接口可以参照多态的方式,通过实现类对象实力化,这叫接口多态。 多态的形式: 具体类多态(不怎么使用)、抽象类多态、接口多态。

Python_面向对象

纵饮孤独 提交于 2019-12-02 12:31:19
一、内容回顾   成员   class Person:     def __init__(self, name, num, gender, birthday):       # 成员变量       self.name = name       self.num = num       self.gender = gender       self.birthday = birthday       # 对象来访问(成员方法)(实例方法)       def eat(self,name):         print("%s吃东西"%self.name)           ### 成员:在类定义的变量和方法都被称为成员       变量:         1、成员变量(实例变量)、字段         2、类变量(静态变量)       方法:         1、成员(实例)方法,加了self的,调用的时候,必须用对象去访问         2、类方法 @classmethod def clsMethod(cls) ## 类方法:第一个参数传递的是类名         3、静态方法,当你的方法不需要传递当前类的对象。语法规则:在方法上面加@staticmethod        ------>>>>>说一说,静态方法、类方法和实例方法的区别       属性:        

第六章-抽象类与接口

▼魔方 西西 提交于 2019-12-02 11:10:51
抽象类的特点: 不能实例化对象; 类中可以定义抽象方法(abstract修饰的方法); 抽象类中可以没有抽象方法。 abstract修饰的方法称为抽象方法,抽象方法只有方法的声明没有方法实现,即没有方法体。包含抽象方法的类本身必须被声明为抽象的。 abstract class Animal { private String color ; 2 public abstract void shout ( ) ; } abstract(抽象)。“抽象方法”,属于一种不完整的方法,只含有一个声明,没有方法主体。下面是抽象方法声明时采用的语法: abstract void f(); 抽象类的继承 派生类继承抽象类必须实现(重写)抽象类中所有的抽象方法,否则派生类也必须定义为抽象类。(重写所有方法) 抽象类不能实例化对象 接口 Java中的接口是一系列方法的声明,是一些方法特征的集合,接口可以看做是一种特殊的抽象类,其中包含常量和方法的声明,而没有变量和方法的实现。 接口的定义语法://interface取代class interface 接口名称 { //接口中的常量声明 //接口中的抽象方法声明 //接口类只能包含普通方法,接口类是一种特殊的抽象类 } 举例: interface Comparable { int compareTo ( Object other ) ; }