| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> PHP知识库 -> java面向对象 -> 正文阅读 |
|
[PHP知识库]java面向对象 |
面向对象和面向过程思想对比1,客观存在的任何一种事物,都可以看做为程序中的对象。 2,使用面向对象思想可以将复杂的问题简单化。 3,将我们从执行者的位置,变成指挥者。 面向对象类的组成属性 ? ? ? ? 该事物的各种特征 ? ? ? ? ? ? ? ? 例如属性:姓名,年龄,毕业院校 行为 ? ? ? ? 该事物存在的功能(能够走的事情) ? ? ? ? ? ? ? ? 例如行为:学习,java变成开发 类和对象的关系类:类是对现实胜过中一类具有共同属性和行为的事物的抽象 对象:是能够看得到摸得到的真实存在的实体 类是对象的描述,对象是类的实体 类的定义类的组成:属性和行为 属性:在代码中通过成员变量来体现(类中方法的变量) 行为:在代码中通过成员变量来体现(和前面的方法相比去掉了static关键字)
对象的使用创建对象? ? ? ? 格式: 类名 对象名 = new 类名(); ? ? ? ? 范例:Student s = new Student(); 使用对象1,使用成员变量 ? ? ? ? 格式:对象名.变量名; 2,使用成员方法 单个对象内存图两个对象内存图? ?两个引用指向同一个对象内存图? ?垃圾回收当堆内存中,对象或数组产生的地址,通过任何方式都不能找到后,就会被判定为内存垃圾, 垃圾会被java垃圾回收器,空闲的时候自动进行清理。 成员变量和局部变量
封装? ? ? ? 面向对象三大特征(封装,继承,多态)? ? ? ? 隐藏实现细节,仅对外暴露公共过的访问方式 ? ? ? ? 封装常见的体现:? ? ? ? ? ? ? ? 1,私有成员变量,提供setxxx和getxxx方法 ? ? ? ? ? ? ? ? 2,件代码抽取到方法中,这是对代码的一种封装 ? ? ? ? ? ? ? ? 3,将属性抽取到类当中,这是对数据的一中封装 ? ? ? ?封装的好处? ? ? ? ? ? ? ? 1,提高了代码的安全性 ? ? ? ? ? ? ? ? 2,提高了代码的复用性 Private关键字是一个权限修饰符 可以修饰成员(成员变量和成员方法) 被Private修饰的成员只能在奔雷中才能访问 针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作 提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰。 提供“set变量名()”方法,用于设置成员变量的值,方法用public修饰。 this关键字? ? ? ? 可以调用本类的成员(变量,方法)解决局部变量和成员变量的重名问题。 ? ? ? ? this;代表所在类的对象应用 ? ? ? ? ? ? ? ? 方法被那个对象调用,this就代表那个对象。 构造方法构建,创造对象的时候,所调用的方法 格式: ? ? ? ? 1,方法名与类名相同,大小写也要一致 ? ? ? ? 2,没有返回值,连void也没有 ? ? ? ? 3,没有具体的返回值(不能由return带回返回结果数据) ?执行时机? ? ? ? 1,创建对象的时候调用,每创建一次对象,就会执行一次构造方法。 ? ? ? ? ?2,不用手动调用构造方法。 构造方法的作用? ? ? ? 用于给对象的数据(属性)进行初始化
所有Student对象的age,都是18.
this.age代表是成员变量age,这样就不会所有的Strdent对象的age都是18了。 构造方法的注意事项1,构造方法的创建 ? ? ? ? 如果没有定义构造方法,系统将给出一个默认的无参数的构造方法。 ? ? ? ? 如果定义了构造方法,系统不再提供默认的构造方法。? 2,构造方法的重载 ? ? ? ? 如果自定义了带参数的构造方法,还要使用无参数的构造方法,就必须再写一个无参数构造方法。 3,推荐的使用方式 ? ? ? ? 无论是否使用,都手动书写无参数的构造方法,和带参数的构造方法。 表准类制作1,成员变量 ? ? ? ? 使用private修饰 2,构造方法 ? ? ? ? 提供一个无参数构造方法 ? ? ? ? 提供一个带多个参数的构造方法 3,成员方法 ? ? ? ? 提供每一个成员变量对应的set()/get() ? ? ? ? 提供一个显示对象信息的show() 4,创建对象并为其他成员变量赋值的两种方式 ? ? ? ? 无参数构造方法创建对象后使用set()赋值 ? ? ? ? 使用带参构造方法直接创建带有属性值的对象 JavaBean类:封装数据。 |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/23 23:02:33- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |