4.Java 类和对象

1.面向对象的基本概念

1.面向机器: 程序 = 数据 + 指令

2.面向过程: 程序 = 数据结构 + 算法

3.面向对象: 程序 = 对象 + 消息

术语:抽象, 对象, 消息, 类(程序由类构成),继承, 多态, 封装

2.类和对象

1.类是一种(类)对象的设计图纸 如:类-房子 房子的图纸 有长宽高和占地面积等一些标注

2.对象是类的实例 如:A aobj = new A(); A-类 aobj-对象 即类的实例

3.类定义

java 复制代码
[修饰符关键字] class 类名 [extends 父类名] [implements 接口列表] {
    //类的内容
}
1.修饰符关键字
    public 公共的类
    abstract 抽象的类 需要被继承,不能用final修饰
    final 最终的类 不能被继承 指它已经是最底层了 比如 String 已经不能被继承
    strictfp 符合浮点规则标准的类 此类所有处理浮点数的方法都遵守一个标准
    static 静态的类 静态的内部类不能有对外调用
2.class 默认继承 Object

4.类的成员

1.变量

1.定义格式 [修饰关键字] 类型 变量名

2.方法

2.定义格式 [修饰关键字] 返回类型 方法名(类型 参数名,......) { //方法体 }

3.构造方法

1.构造函数无返回类型

2.构造函数名称必须和类名相同

4.重载

1.同一个类

2.多个方法的方法名字相同

3.参数列表不同

参数个数不同,参数的数据类型不同,不同数据类型的参数顺序不同

4.方法的重载和修饰符无关

5.方法的重载和有无返回值无关

6.方法的重载和返回值类型无关

7.方法的重载和参数名无关

8.方法的重载是一个类中多态的一种体现

  1. 类和成员的修饰符
java 复制代码
修饰符         可修饰对象          含义
public        类,接口,变量,方法    可跨包访问
private       变量,方法           类内可访问
protected     变量,方法           包内可访问
static        类,接口,变量,方法    静态内部类不能对外调用,成员独立于该类的任何实例对象,
                                 不能创建内部类 变量是全局变量 方法是全局方法,在其中
                                 不能使 this,super
synchronized  方法                保持线程同步
final         类,接口,变量,方法    没有子类的类 不能改变变量值,不能改变变量的字段,不能
                                 被覆盖的方法
abstract      类,接口,变量,方法    类中含有没有实现的方法,该类不能实例化 所有接口都是抽象的,是
                                 接口缺省的修饰符 没有实现的方法
相关推荐
消失的旧时光-19437 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦
杨凯凡8 小时前
【012】图与最短路径:了解即可
java·数据结构
比特森林探险记8 小时前
【无标题】
java·前端
椰猫子9 小时前
Javaweb(Filter、Listener、AJAX、JSON)
java·开发语言
朝新_9 小时前
【Spring AI 】核心知识体系梳理:从入门到实战
java·人工智能·spring
一 乐9 小时前
旅游|基于springboot + vue旅游信息推荐系统(源码+数据库+文档)
java·vue.js·spring boot·论文·旅游·毕设·旅游信息推荐系统
我命由我1234510 小时前
Android 开发中,关于 Gradle 的 distributionUrl 的一些问题
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
橙露10 小时前
SpringBoot 全局异常处理:优雅封装统一返回格式
java·spring boot·后端
awei091610 小时前
MinIO配置自定义crossdomain.xml跨域策略(Nginx反向代理实现)
xml·java·nginx
谁怕平生太急10 小时前
面试题记录:在线数据迁移
java·数据库·spring