首页 > 编程语言 >Java-面向对象(下)

Java-面向对象(下)

时间:2024-11-16 15:18:17浏览次数:3  
标签:Java 关键字 接口 面向对象 抽象 基类 抽象类 方法

下面让我们继续学习面向对象

类的继承

在现有类的基础上去构建一个新的类。现有类叫做基类(baseclass)、超类(superclass)

新的类叫做派生类(derived class)、子类(孩子类)(child class)

如果一个类想要继承另外一个类,需要用到extends关键字

class基类{

}

class 子类extends基类{

}

关于继承有以下注意事项:

1.一个类只能继承一个基类,不能继承多个。

2.不同的类可以继承同一个基类

3.在子类中的重写方法:

和基类被重写的方法同样的方法名、参数列表和返回值类型

子类重写方法的访问权限不能比基类更严格

super 关键字

当基类的方法被子类重写后,子类对象将无法访问基类中被重写的方法。但是使用super关键字可以在子类中调用基类的普通属性、方法和构造方法

语法格式:

super.成员变量

super.成员方法(参数1,参数2)

注意事项

1.通过super调用基类构造方法的代码必需位于子类构造方法的第一行,并且只能出现一次

2.需要注意,this和super不能同时出现,因为它们都需要位于构造方法的第一行

Final关键字

可以使用final关键字,声明类、属性、方法,声明时有以下注意事项

1.使用final修饰的类不能有子类

2.使用final修饰的方法不能被子类重写

3.使用final修饰的变量(成员变量和局部变量)是常量,常量不可修改

4.使用final声明的变量需要全部大写,如果变量中使用public static final声明,该变量将变成全局常量

抽象类和接口

抽象类

在定义类的时候,成员方法需要描述类的行为特征,但是有些特征是不同的,无法被统一确定。

这种情况,Java提供了抽象方法来满足需求。抽象方法是被abstract关键字修饰的成员方法,

抽象方法的格式: abstract 返回值类型 方法名称(参数);

只有在抽象类中才能有抽象方法

抽象类的定义格式: abstract class 抽象类名称{

属性;

访问权限 返回值类型 方法名称(参数)  //普通方法

Return[返回值];

}

返回权限 abstract 返回值类型 抽象方法名称(参数);  //抽象方法,无方法体

}

抽象类的定义的注意事项:

1.有抽象方法的类必须是抽象类

2.抽象类抽象方法都需要abstract关键字声明

3.抽象方法只需要声明不需要实现

4.一个非抽象类继承了抽象类,该子类必须实现抽象类中的全部抽象方法

5.使用abstract关键字修饰的抽象方法不能使用private修饰,因为抽象方法必须被子类实现,privat不能被子类访问。

接口

定义:一个抽象类中的方法都是抽象的,则该类被定义为接口。在JDK8中接口除了有抽象方法以外,还可以包括默认方法(使用default修饰)和静态方法(使用static修饰,也叫类方法)。

接口使用interface关键字声明

语法格式: public interface接口名 extends 接口1,接口2...{

public static final 数据结构 常量名 = 常量值;

public abstract 返回值类型 抽象方法名称(参数值类型);

}

:一个接口可以继承多个基接口,突破了单继承的限制。接口中的变量使用public static final 进行修饰(全局变量)

注意:即使代码中省略了public,他的访问权限仍是public

接口中可以包含三种方法:默认方法、静态方法、抽象方法,静态方法可以通过 接口名.方法名 进行调用,而默认方法和抽象方法需要通过接口实现类的对象进行调用。

接口实现类格式首先定义一个类,该类使用implements关键字实现接口,同时也实现接口中的全部抽象方法。

接口的实现类 语法格式: 修饰符 class 类名 implements 接口1,接口2,…{…

}


如果一个类中需要实现接口以及继承基类

语法格式:修饰符 class 类名 extends 基类名 implements 接口1,接口2,…{

}

了解一个关键字:instanceof关键字

用于判断一个对象是否是某个类(或接口)的实例,

语法格式:对象 instanceof 类(或接口)

如果对象是该类(或接口)的实例对象,则返回true,否则返回false。

Object类

Java提供了一个object类,它是所有类的基类,每个类都直接或间接的继承object类,因此被称为超类。

Object类中定义了一些方法: boolean equals() 判断两个对象是否相等

                                                int hashcode()   返回对象的散列码值

                                                String tostring    返回对象的字符串表示形式

标签:Java,关键字,接口,面向对象,抽象,基类,抽象类,方法
From: https://blog.csdn.net/2401_84968533/article/details/143817502

相关文章

  • #Java-面向对象进阶-1
    1.static静态属性static是Java中的一个修饰符,可用来修饰成员变量、成员方法a.静态变量被static修饰的成员变量称为静态变量静态变量被该类的所有成员共享调用方式:类名调用(推荐)对象名调用例:创建方法//在创建的类中:publicstaticStringname;调用:假设类为:Stud......
  • #Java-面向对象进阶-多态
    1.多态多态是面向对象三大特征之一,表示同类型的对象表现不同的形态表现形式:父类类型对象名称=子类对象;多态的前提:有继承关系有父类引用子类Fuf=newZi();有方法重写使用场景举例:当需要写一个注册的方法,但是这个方法要能实现不同对象的注册例如:老......
  • Java序列化与反序列化深度解析
    一、引言在Java开发中,序列化与反序列化是非常重要的概念和技术手段。它允许我们将对象转换为字节流以便于存储或传输,然后在需要的时候再将字节流还原为对象。这一机制在很多场景中都有着广泛的应用,例如数据持久化、分布式系统中的远程方法调用(RMI)、缓存等。本文将深入探讨......
  • 7.Java 注解和元注解(三种注解、四种元注解)
    一、注解概述注解也被称为元数据,用于修饰包、类、方法等数据信息和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息在JavaSE中,注解使用的目的比较简单,例如标记过时的功能,忽略警告等JavaEE中注解会充当更加重要的角色二、三种注......
  • JavaScript判断用户设备类型:PC端与移动端的区分方法
    在JavaScript中,可以通过检查用户代理字符串(UserAgentString)来判断用户设备类型,即访问网站的是PC端还是移动端设备。用户代理字符串是浏览器在发送HTTP请求时附带的一段信息,它包含了浏览器类型、版本、操作系统以及设备类型等信息。以下是一个简单的示例代码,用于判断用户......
  • 一文详解Java反射技术
    Java反射什么是Java反射以及引出反射的背景?Class类如何获取一个class的Class实例Class类的使用获取属性获取调用方法获取注解信息获取构造方法反射的应用什么是Java反射以及引出反射的背景?Java程序中的对象有两种类型,编译时类型和运行时类型,而很多时候编译......
  • Java反序列化-Commons Collections3利用链分析详解
    介绍CC3与CC1和CC6的主要区别在于,CC1和CC6依赖反射机制来执行Runtime.getRuntime().exec()等危险命令,而如果服务器将这些方法列入黑名单,这两种方式就会失效。相比之下,CC3通过类加载器动态加载恶意类来执行危险函数,绕过黑名单限制,从而达到命令执行的目的。公众号:T......
  • java笔试题
    请指出下面程序的运行结果(62)publicclassTest{publicstaticvoidmain(String[]args){System.out.println(test());}publicstaticinttest(){try{return2;}catch(Exceptione){return4;......
  • 前端必知必会-JavaScript if、else 和 else if
    文章目录JavaScriptif、else和elseif条件语句if语句else语句elseif语句总结JavaScriptif、else和elseif条件语句用于根据不同的条件执行不同的操作。条件语句编写代码时,您经常希望针对不同的决策执行不同的操作。您可以在代码中使用条件语句来执行......
  • 前端必知必会-JavaScript Switch 语句
    文章目录JavaScriptSwitch语句JavaScriptSwitch语句break关键字default关键字常见代码块switch详细信息严格比较总结JavaScriptSwitch语句switch语句用于根据不同的条件执行不同的操作。JavaScriptSwitch语句使用switch语句从多个代码块中选择一个......