类和继承
1.类的继承的重要性
1.提高代码的使用效率,多次使用;
2.提高程序的扩展性,使其内容丰富;
2.继承的语法格式
java中继承的关键字是:extends;
格式:
public class 子类名(超类也就是要继承的) extends 父类(基类也就是被继承的){}
3子类继承到父类的方法和属性
1.当子类和父类在同一个包下,只有公有的和受保护的属性方法能被继承。
2.当子类和父类不在同一个包下,只有公有的属性和方法能被子类继承。
4.方法重写
要实现方法重写的要求:
1.必须存在继承关系
2.子类重写方法的访问修饰符可以大于等于父类的访问修饰符:protect public
3.方法的返回值类型、方法名、参数个数、参数顺序、参数类型、都必须要和父类的完全相同。
调用:
如果子类重写了父类中定义的方法,那么优先调用子类的方法,如果子类中没有重写这些方法,那么优先调用父类的方法。
5.自动转型
要实现自动转型必须要存在继承关系;
格式1:
父类名 对象名=new 子类构造方法();
例:Student stu=new UNStudents();
其缺点是:使用自动转型无法调用子类定义的方法;以为java在编译过程中只会根据对象名的类型去查找这些方法在类中是否应经定义过,如果没有定义则抛出错误,如果定义好了,则编译成功;
格式2:
//定义方法
public 返回值数据类型 方法名(父类名 对象名){
//调用父类中一定定义过的方法
}
//实例化对象
子类名 对象名B=new 子类构造方法();
JFrame窗体中有一个add()方法.
JLable JTextField JButton因为这些类都为component类的子类,所以在add方法中就使用了自动转型;
其优点是可以减少重复代码的使用
6.多态
多态是由java的方法方法重载、继承、方法重写、自动转型等的综合。也是对象的多种表示形式。
7.接口
定义接口的语法格式:
其关键字是:interface
格式:
public interface 接口名 extends 接口名、、、{
//定义常量的方法:
public static final 数据类型 常量名=值;
//定义抽象方法
public 返回值数据类型 方法名(数据类型 参数名、、、);
}注意:1、接口可以定义常量,但常量名每个字母必须要大写;2、接口中可以定义抽象方法3、接口中默认的访问修饰符为public; 4、接口可以承接接口,并且可以承接多的接口;5、接口不能用来实例化对象。
实现接口的语法格式:
关键字:implements
格式:
public class 类名 implements 接口名,、、、{
//实现接口中所有的方法
}注意:类实现接口后,必须要实现接口中的每个抽象方法;接口也是一种类,只是比较特殊,当类实现接口后,就相当于类继承了另外一个类;
8.类和接口的区别、
1、定义类的关键字是class,定义接口的关键字是interface
2、类的默认访问修饰符是protect,接口的默认访问修饰符是public
3、接口中只能定义常量、和抽象方法(public);而类中可以定义普通方法、属性、构造方法和常量(public、private、protect);
4、接口可以同时继承多个接口,而类只能继承一个类;
5、接口不能用来实例化对象,类可以用来实例化对象
9、抽象类
抽象类是继承类和接口的所有特殊的类.
定义类的语法格式:
关键字:abstract class
格式:
public abstract class 类名{
//类中的任何方法和属性都可以定义
//定义接口中的常量
//定义接口中的抽象方法,但格式稍有不同;
public abstract 返回值数据类型 方法名(数据类型 参数名,、、、)
}
抽象类可以继承抽象类和类,也可以实现接口;但不能用来实例化对象
继承抽象类的语法格式:
public abstract class 类名 extends 被继承的类名或抽象名 implements 接口,、、、{
//也可以实现抽闲方法也可以不用实现;
}
9.事件机制
1、事件源
你要发生的事件在哪一个图形界面类对象上,那么那个图形界面类对象就是事件源
比如:登陆按钮、账号输入框
2、事件类型(事件监听器方法)
给事件源添加相应的时间监听器方法
在事件源上发生相应动作后,就由相应事件监听器方法来捕获这些事件动作。
给事件添加一个addActionListener的监听器方法(必须要带上事件处理类对象)
3、事件处理类对象
ActionListener接口,要定义一个类来实现ActionListener接口,并且实现接口中的抽象方法。
格式:
public class LoginListener implements ActionListener{
//实现抽象方法
}
分享到:
相关推荐
继承是OOP中的一个重要特性,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和行为。这种机制使得代码重用变得更加简单,同时也支持多态性——即不同类型的对象能够对同一消息作出不同的响应。在...
在C#中,实现类的继承非常简单。只需在定义子类时,在类名后面加上冒号 `:`,紧接着指定要继承的父类即可。例如: ```csharp class A { public void ShowA() { Console.WriteLine("我是父类A"); } } class B :...
总结来说,Lua 通过表和元表机制实现了面向对象编程中的类和继承概念。虽然没有内置的 class 关键字,但程序员可以通过自定义的构造函数和元表设置实现类的创建和继承。同时,通过覆盖父类的方法,可以实现特定子类...
### C++类总结多态继承 #### 一、C++ 类的基本概念 1. **注意事项** - 在定义数据成员时不能直接给数据成员赋初值。这是因为类本身仅是一种类型,类中的数据成员并不实际占用内存空间。数据成员的初始化应该在...
总结来说,这个项目通过继承的概念展示了如何在 VC++ 环境下创建和使用类。`Animal` 类作为基础,定义了动物共有的行为,而 `Dog` 和 `Lion` 类则通过继承 `Animal` 并添加自己的特性,展示了面向对象编程的灵活性和...
总结来说,"简单的C#继承算法程序"涉及到C#编程中的类和继承机制,以及如何利用这些机制来构建和实现遗传算法。通过理解和掌握这些概念,开发者可以创建出灵活、可扩展的代码结构,以解决复杂的计算问题。
以下是一个简单的示例,展示了基本类、抽象类和接口的基本用法: ```java // 基本类示例 public class Fruit { public void price() { System.out.println("水果的价格"); } public void weight() { System....
在Java编程中,设计一个银行账户类是学习面向对象编程的一个常见练习,它涉及到类的定义、对象的创建以及继承和多态的概念。在这个实验中,我们创建了一个名为`BankCount`的类来代表银行账户,并包含了一系列与账户...
从提供的文件信息中,我们可以提炼出关于Qt5.1类继承关系图的详细知识点,这些知识涉及到Qt的模型视图框架,模型-视图-控制器(MVC)设计模式,以及如何在Qt中使用模型和视图。 首先,Qt的模型视图框架是一组用于...
总结来说,继承和组合是面向对象编程中的关键概念,它们分别代表了“is-a”和“has-a”的关系。理解并熟练掌握这两者,将有助于开发出更加高效、可维护的代码。在C++中,灵活运用继承和组合,能够实现丰富的类层次...
【标题】和【描述】提及的是一个关于C和C++编程的学习资料,主要涉及C语言的基础知识和C++的一些特性,如元素类和对象模类的继承。【标签】为"专业资料",表明这是针对IT专业人士或学习者的内容。 在C语言中,基础...
这篇总结将深入探讨匿名内部类的相关知识点。 1. **匿名内部类的概念** 匿名内部类是内部类的一种特殊形式,它没有类名,常用于一次性创建的对象,特别是在需要实现一个接口或继承一个类,但又不需要额外的方法时...
总结起来,这个例子展示了如何通过`Animal`类及其子类来探讨继承、抽象类和接口的概念。继承使得代码复用变得简单,抽象类定义了基本的结构和行为,而接口则提供了行为规范。通过这种方式,我们可以构建灵活且可扩展...
在Java编程语言中,继承是面向对象编程的一个核心特性,它允许一个类(子类)继承另一个类(父类)的属性和方法。这个概念在软件工程中扮演着至关重要的角色,因为它促进了代码的重用、扩展和组织。标题"继承的小...
本篇将对一些常见的C#类进行深入的总结,帮助C#开发者更好地理解和应用。 首先,我们要提到的是`System.Object`,它是所有C#类的基类。每个类都直接或间接地继承自它,包含了一些基本的方法,如`ToString()`、`...
总结来说,"C++中的模板类继承"这一主题探讨了如何利用C++的模板机制和继承来实现通用的列表数据结构,并在其上实现多种排序算法。这种方式使得代码能够适应多种数据类型,同时也提供了扩展和优化的空间,是C++面向...
总结来说,通过单独继承`View`类实现自定义控件,我们可以完全掌控控件的绘制和行为,创建出满足特定需求的组件。同时,利用Android的属性系统,我们可以使自定义控件具有更好的可配置性和扩展性。这不仅增强了应用...
总结来说,Java的封装提供了数据安全和隐藏,继承实现了代码的复用和扩展,多态确保了程序的灵活性和多样性。理解并熟练运用这三个概念,对于编写高效、可维护的Java代码至关重要。在实际编程过程中,开发者应根据...
总结一下,Java中的继承接口使类能够具有多种行为,实现了代码的复用和模块化设计;克隆则提供了对象复制的能力,这对于对象的状态复制和独立操作副本场景非常有用。了解并熟练运用这两个概念对于开发高质量的Java...
通过继承,可以创建一个新类(称为派生类或子类),它继承了现有类(称为基类或父类)的所有属性和行为,并可以在此基础上添加新的功能或修改已有的行为。本文档由一位资深软件公司的讲师编写,深入探讨了C++中继承...