继承:
正如同他的名字那样,在当代社会由儿子继承父亲的所有东西,
在程序中也是一样,如果某个类是另一个类的子类,则他可继承
父类中的所有属性与方法。
1.当子类和父类在同一个包下:不能调用的属性和方法就只有
私有的。能调用的有公有的,受保护的,默认的属性和方法。
2.当子类和父类不在同一个包下:在子类中能调用到的属性和方
法有公有的和受保护的。不在子类中(主函数或者其它的类中)
调用属性和方法时能调用的有公有的属性和方法。
(1)继承(父类只能继承一个子类)
在类与类之间继承的格式:
Java继承的关键字是:extends
格式:public class 类名(子类或者超类) extends 类名(父类或者基类) {
}
方法的重写:有时候子类从父类哪里继承的方法比不适用于自己,
于是,他便进化了在父类已有的方法上重新创造了属于自己的方法。
重写的条件:
1.必须要存在继承关系。
2.返回值数据类型,方法名,参数个数,参数类型,参数顺序必须要完全一致。
3.子类重写方法的访问修饰符可以大于或者等于父类方法的访问修饰符。
再有方法的调用,优先使用自己的
1.是否是子类的对象
2.优先调用子类的方法,子类没有才会调用父类的方法。
(2)接口:(接口可以继承多个接口)
接口的格式:
public interface 接口名 extends 接口名,... {
//定义常量
public static final 数据类型 常量名 = 值;
//定义抽象方法的格式
public 返回值数据类型 方法名(参数类型 参数名,...);
}
接口默认的访问修饰符是public
接口不能实例化对象
定义类实现接口,实现的关键字:implements
实现格式:
public class 类名 extends 类名 implements 接口名,... {
//类中必须要实现接口中所有的抽象方法。
}
类与接口的关系:类可以实现(也就是继承)接口,用关键字(implement),但在实现时要实现接
口中的所有方法,
(3)抽象类
格式:
public abstract class 抽象类名 extends 类名或者抽象类 implements 接口名,... {
//和类一样定义属性和方法
//和接口一样定义常量和抽象方法,但是抽象方法的格式稍有不同
public abstract 返回值类型 方法名(参数类型 参数名,...);
}
抽象类就是介于类和接口之间的一种特殊性。
(4)多态
多态是由方法重载,继承,方法重写,自动转型等技术点的组合。
以下为实验代码
设置水果,让顾客购买,使用继承和方法重写
//设置一个apple类
public class apple extends fruit {
/*//设置apple类的对象的名字属性
private String name;
//设置apple类的对象的价格属性
private int price;
//设置apple类的对象的名字的设置方法
public void setName(String name){
this.name=name;
}
//设置apple类的对象的名字的获取方法
public String getName(){
return name;
}
//设置设置价格的方法
public void setPrice(int price){
this.price=price;
}
//设置获取价格的方法
public int getPrice(){
return price;
}*/
//购买方法
public void buyFruit(){
System.out.println("买一斤"+getName()+"花费"+getPrice()+"元,很难过");
}
}
//建立一个banana类
public class banana extends fruit {
/*//设置banana类对象的名字属性
private String name;
//设置banana的价格属性
private int price;
//设置设置名字的方法
public void setName(String name){
this.name=name;
}
//设置获取名字的方法
public String getName(){
return name;
}
//设置设置价格的方法
public void setPrice(int price){
this.price=price;
}
//设置获取价格的方法
public int getPrice(){
return price;
}*/
//购买方法
public void buyFruit(){
System.out.println("买一斤"+getName()+"花费"+getPrice()+"元,很高兴");
}
}
//设置一个fruit类
public class fruit {
//设置fruit类的名字属性
private String name;
//设置水果价格的属性
private int price;
//设置水果价格的设置方法
public void setPrice(int price){
this.price=price;
}
//设置水果价格的获取方法
public int getPrice(){
return price;
}
//设置设置fruit类的对象的名字的方法
public void setName(String name){
this.name=name;
}
//设置获取名字的方法
public String getName() {
return name;
}
//购买方法
public void buyFruit(){
System.out.println("买一斤"+getName()+"花费"+getPrice()+"元");
}
}
//消费者:
//设置一个类
public class customer {
//设置消费者名字属性
private String name;
//设置获取设置名字的方法
public void setName(String name){
this.name=name;
}
//设置获取名字的方法
public String getName(){
return name;
}
//设置消费者买东西的方法
public void buyFruit(fruit a){
System.out.println(getName()+"买了"+a.getName()+"用了"+a.getPrice()+"元!");
}
}
//卖水果
public class buyfruit {
//设置主函数入口
public static void main(String[] args){
banana ban=new banana();
ban.setName("香蕉");
ban.setPrice(100);
ban.buyFruit();
apple app=new apple();
app.setName("苹果");
app.setPrice(50);
app.buyFruit();
customer cust=new customer();
cust.setName("张三");
cust.buyFruit(app);
cust.buyFruit(ban);
}
}
以上代码为个人书写如有雷同不胜荣幸
相关推荐
在这个特定的程序中,我们看到了一个关于Java继承的实例,它演示了子类对象初始化时涉及的各个步骤,包括构造方法、初始化值、父类构造方法以及父类的初始化值。 首先,我们有一个名为`Parent`的父类,它有两个实例...
Java继承机制在图形类中的应用 Java继承机制是一种重要的面向对象编程技术,通过继承机制,可以实现代码的重用和简化程序设计。在本例中,我们将使用Java继承机制编写一个抽象的图形类Shape,并编写两个子类矩形类...
Java继承是面向对象编程中的一个核心概念,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的重用和扩展。在这个名为"java继承部分课件"的资料中,我们可以期待学习到关于Java继承的基础知识、...
Java继承作业.pdf 在本文中,我们将讨论Java继承的基本概念和实现方法,並以三个实例来演示继承的应用。 一、new A 和 A a=new A()的区别 在Java中,new关键字用于创建对象,而A a=new A()是将对象赋值给变量a。...
下面我们将深入探讨JAVA继承的相关知识点。 1. **继承的概念**: - 继承体现了类之间的层次结构,子类继承父类,表示子类是父类的一个特例,具备父类的所有特性但可能有所扩展。 - Java中声明继承使用`extends`...
java继承学习教案.pptx
Java继承和多态PPT教案学习 本PPT教案主要讲解了Java中的继承和多态机制,包括继承、里式代换原则、多态和动态绑定、方法重载、重载构造函数和方法覆盖等概念。 继承是面向对象编程的基本机制之一,允许一个类继承...
这个压缩包"java继承、多态的简单程序.zip"显然包含了一些示例代码,旨在帮助初学者理解这两个概念。接下来,我们将深入探讨Java中的继承和多态性。 ### 继承(Inheritance) 在Java中,继承允许一个类(子类)...
这个例子展示了Java继承的核心概念,包括: 1. 使用`extends`关键字创建子类。 2. 访问和覆盖父类的方法。 3. 添加子类特有的方法。 4. 多态性的应用。 通过学习这个实例,开发者能够更好地理解和运用Java的继承...
java 继承和多态PPT教程
Java继承是面向对象编程的一个核心概念,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的复用和扩展。在这个经典的Java继承例子中,我们将深入理解这一机制。 首先,我们要明确的是,继承的...
Java继承机制详解 Java继承是面向对象编程(OOP)的一种机制,允许一个类继承另一个类的成员变量和成员方法。通过继承,可以实现代码的重用和扩展。 在Java中,继承是通过使用关键字`extends`来实现的。例如,`...
6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip6.java继承的概念.zip...
7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip7.java继承的语法.zip...
Java 继承是面向对象编程中的一个核心概念,它允许一个类(子类或派生类)从另一个类(父类或基类)继承特性,从而实现代码的复用和扩展。方法重写则是继承机制中一个关键的特性,允许子类对父类的方法进行定制化,...
在Java编程语言中,继承是面向对象编程的一个核心特性,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和行为。这个概念极大地提高了代码的重用性和模块化,使得我们可以构建复杂的类层次结构。在...
java 继承 程序 学习java 必须要学习的知识,搞懂了 你java就入门了
java继承课件,主要用于初学者自学java继承课件,主要用于初学者自学java继承课件,主要用于初学者自学java继承课件,主要用于初学者自学java继承课件,主要用于初学者自学
在这个"Java继承实例源代码"的压缩包中,包含的文件可能提供了关于Java继承和多态性的实际应用示例。 首先,我们来看“继承”这一概念。在Java中,通过使用关键字`extends`,一个类可以声明其为另一个类的子类。...
1继承的概念 2继承的实现 3变量隐藏与方法覆盖 4super关键字 5 子类的构造顺序 6Object类 7 final关键字