IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> JAVA面向对象编程 -> 正文阅读

[Java知识库]JAVA面向对象编程

1.1面向对象

1.1.1
1).面向对象的基本概念:
面向对象程序设计又称为OOP,是目前占主流地位的一种程序设计,其思想宗旨是“基于对象的编程”。对象是对现实世界事物的模拟,可以把万事万物当做各种对象。面向对象程序设计将具有共同行为和状态的对象共同性质抽象出来,使用数据和方法来描述对象的状态和行为。面相对象的四个重要特征就是“封装”,“继承”,“多态”,“抽象”
2)类
在程序中,类实际上就是数据类型。为了更好的模拟现实世界,往往需要创建解决问题所必须的数据类型 。
(1)类的定义

             定义类的格式:
              [类的修饰符]  class 类名 [extends       父类] [implements 接口名]{
      成员变量声明
      成员方法声明
      构造方法


(2)成员方法(methods)
1.实例方法
2.静态方法,也成类方法
3.设置器和访问器

                    设置器和访问器(setXXX   getXXX):通常完成对于各成员变量赋值功能的方法称为设置器;完成对某个成员变量查看的方法真会访问器。
    设置器特点:返回值类型为void,方法声明至少有一个参数,一般为value,方法体内肯定有赋值语句。
    访问器特点:方法声明,部分有返回值类型(成员变量的数据类型),方法体内必须有return语句。

方法的声明:
[成员说明修饰符] [方法返回类型] 方法体([形参列表]){
//方法体
}
方法返回类型定义了方法返回值则类型,可以为基本类型,也可以为复合类型 。当一个方法不需要返回值时,返回类型为void,如果声明了方法返回值类型,则方法体内必须有一条有效的return语句,该语句返回一个变量或一个表达式的值,这个变量或表达式的值,必须与方法返回值类型匹配
方法的调用:
方法名(实参列表)
对象的引用名.方法名(实参列表)
类名.方法名(实参列表)

(3)成员变量
成员变量也称属性是事物静态特征的抽象,成员变量分为两种:类的成员变量和对象的成员变量
成员变量的定义格式:
[成员说明修饰符] 变量类型 成员变量名

   成员说明修饰符限定了该变量的访问权限,可以省略,也可以是public ,private......用static修饰的就是类成员变量,由类名调用。不是static修饰的,就是实例成员,由对象名调用,只属于某一个变量
    变量类型可以是JAVA语言允许的任何数据类型,包括基本数据类型和复合数据类型。
    变量名必须是合法的标识符。

(4)构造方法
特点:

  • 构造方法的名字与类名相同
  • 作用是个对象的成员变量赋初始值
  • 无返回值类型且不写void
  • 由系统调用,通过new关键字实现
  • 可重载

1.2.1
(1)对象的声明
格式:类名 对象名
(2)对象的初始化
对象名 = new 类名(参数)
(3)引用对象
对象名.成员变量名
对象名.成员方法名(参数列表)
1.3.1
1) 访问权限:
public>protected>默认(package或default)>private

  • public修饰某成员,任意位置都可
  • protected修饰某成员,相同类包内的不同类可以访问,不同类包中有父子继承的类可以访问
  • 什么都不写,就是默认的访问权限,他修饰的成员,在一个类包中的不同类可以访问
  • private修饰成员,只能是自己类中访问
    2) this关键字
  • 用来区分全局变量和局部变量
  • 用来指代自身对象的引用
int age
public void setAge(int age){
        this.age=age
}

1.2继承,接口

1.2.1继承的定义
本质为代码复用,类的继承是单继承接口是多接口

  • 子类继承了父类定义的变量和方法

  • 也可以修改父类的变量或重写父类的方法

  • 可添加自己特有的变量和方法
    类的继承是通过关键字extends来实现的,其格式为:
    [访问权限] class 子类名 extends 父类名
    1.2.2继承的特点

  • 只能继承父类中非private

  • 父类中的成员可被子类覆盖

  • 子类通过super关键字访问的父类中被覆盖的成员

  • 构造方法执行顺序:子类生成对象时先执行父类的构造方法,在执行子类的子类默认调用父类无参构造方法,子类构造方法中如果有super代码,一定是第一行
    1.2.3继承的应用
    final关键字:

  • 修饰类表示,词类是最终类,不能被继承

  • 修饰变量表示,该变量是常量,不能被修改

  • 修饰方法表示,该方法是最终方法,不能被重写
    1.2.3接口的定义
    接口就是方法定义和常量值的集合,接口在语法上和类相似,他也有属性和方法,接口间也可以形成继承关系。它的属性都是常量方法,都是抽象方法,没有方法体。
    接口的定义:
    [修饰符] <接口名> [extends父接口列表]{


1.2.4接口的特点

  • 接口用关键字interface来定义,而不是class
  • 接口中定义的变量全部是静态变量,而且是最终的静态变量,接口还可以,用来实现不同类之间的常量共享
  • 接口中没有自身的构造方法,而且定义的方法都是抽象方法,即只提供方法的定义,而不提供具体的实现
  • 接口采用多重继承机制,而不是采用类的单重继承机制
    1.2.5接口的实现
    类修饰符 class 类名 [extends 父类名] [implements 接口名列表]{
    // 类中重写方法的抽象方法

    1.2.6抽象类
    1.抽象类
    抽象类一般没有足够的信息来描述一个具体的对象,抽象类只用于继承,不能用于创建对象,一个抽象类一般包括一个或多个抽象方法。
    语法格式:abstract class 类名{
    类成员定义

    抽象类特性:
  • 抽象类中不是所有的方法都是抽象方法,可以在抽象类中声明并实现方法
  • 抽象类的子类必须实现,父类的所有抽象方法后,才能实例化,否则这个子类也会成为一个抽象类
  • 抽象类不能实例化
  • 可以定义不包含抽象方法的抽象类,此时该类不能被实例化
  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-12-06 15:07:02  更:2021-12-06 15:07:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:03:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码