1.面向过程:所有事情都是按顺序一件件做,未知主体

买菜,做饭,吃饭,洗碗

面向对象:将功能封装到对象之中,让对象去实现功能

去饭馆,告诉服务员要吃啥,然后等着端上来。

面向对象的目的:

复杂的东西简单化,

将面向过程中的执行者变成了指挥者

面向对象的三大特性:封装,继承,多态

2.对象:特性,行为,对象也叫实例

万物皆对象

类:多个对象,具有相同状态行为的一类事物

类的实例化:将描述转为具体的过程

将类具体到某一个对象上面,该对象具有什么的状态特征和什么行为

类:用来描述事物

对象:具体的某个事物

3.对象的状态特征用成员变量来表示

如姓名,身高,体重

对象的行为用方法来表示

如唱歌跳舞

类的定义:

注意:有public时,此类的名称与java文件名称相同

类的名称首字母必须大写

4.创建对象:创建类---->创建对象----->类的实例化

类名 对象名称 = new 类名();

一个类可以创建多个对象

创建类

class Person{
String name;
int age;
int num;
void sing(String singName) {
System.out.println("唱"+singName);
}
void dance(String danceName) {
System.out.println("跳"+danceName);
}
}

创建对象

Person wxl=new Person();

赋值

wxl.name="哈哈哈";

取值

System.out.print(wxl.name);
【哈哈哈】

对象调用方法

wxl.dance("爵士");
【哈哈哈跳爵士】

5.jvm的内存划分(更好的了解对象在内存中的存取)

方法区(字节码,静态变量,常量)

虚拟机栈(存放方法/函数)

本地方法区(存放方法)

堆(存放创建的对象和数组【使用了new】)

计数器(记录当前执行的指令)

6.栈:(一种数据结构)先进后出

入栈(元素放入栈里),栈顶,栈底,出栈,

栈帧:存放成员变量

调用每个方法都会创建自己的栈帧,每个栈帧里都有自己的成员变量

执行指令时:先是main方法栈帧入栈,再是其他方法栈帧入栈。

java17(面向对象)的更多相关文章

  1. angular2系列教程(六)两种pipe:函数式编程与面向对象编程

    今天,我们要讲的是angualr2的pipe这个知识点. 例子

  2. 一起学 Java(二)面向对象

    一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数 ...

  3. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

  4. 前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型

    前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型 前言(题外话): 有人说拖延症是一个绝症,哎呀治不好了.先不说这是一个每个人都多多少少会有的,也不管它究竟对生活有多么大的 ...

  5. .NET 基础 一步步 一幕幕[面向对象之对象和类]

    对象和类 本篇正式进入面向对象的知识点简述: 何为对象,佛曰:一花一世界,一木一浮生,一草一天堂,一叶一如来,一砂一极乐,一方一净土,一笑一尘缘,一念一清静.可见"万物皆对象". ...

  6. 简单分析JavaScript中的面向对象

    初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...

  7. Java程序员应该了解的10个面向对象设计原则

    面向对象设计原则: 是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton.Decorat ...

  8. JavaScript学习笔记(三)——this、原型、javascript面向对象

    一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ...

  9. 带你一分钟理解闭包--js面向对象编程

    上一篇<简单粗暴地理解js原型链--js面向对象编程>没想到能攒到这么多赞,实属意外.分享是个好事情,尤其是分享自己的学习感悟.所以网上关于原型链.闭包.作用域等文章多如牛毛,很多文章写得 ...

随机推荐

  1. 编排yml文件剖析

    # yaml格式的pod定义文件完整内容: apiVersion: v1       #必选,版本号,例如v1 kind: Pod       #必选,Pod metadata:       #必选, ...

  2. 设计Twitter 时间线

    「design Twitter」是 LeetCode 上第 335 道题目,不仅题目本身很有意思,而且把合并多个有序链表的算法和面向对象设计(OO design)结合起来了,很有实际意义,本文就带大家 ...

  3. 做Java开发7年,今年9个月时间圆梦饿了么P7

    前言 工作拧螺丝,面试造火箭.我想这是每个程序员比较头疼的事情吧!但是,又必须要经历一个面试流程,尤其是摸不清面试官问的问题,导致面试的时候不知道如何回答.本文是工作7年Java程序员从几十次面试中挑 ...

  4. 一些bug

    长期留坑 1.AC自动机多模式串匹配问题 对于要统计各个模式串在文本中的出现次数,对于每个当前节点不能直接暴力跳$fail$ 复杂可以退化到$O(n^2)$ $aaaaaa--aaa$可以卡掉 要将$ ...

  5. JavaSE基础语法学习

    标识符 表示类名的标识符用大写字母开始. 表示方法和变量的标识符用小写字母开始,后面的描述性词以大写开始. 注意 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($).或者下划线(_)开始 ...

  6. 凝思磐石安全系统V6.0.8版本(debian)增加多于4个串口方法

    在网上找了好多方法,大家基本上都用ubuntu系统做实现演示,里面的有些文件我在凝思系统上根本找不到,最终通过摸索已解决,记录下操作过程(整个过程都需要在root用户下进行): 判断系统目前能识别的串 ...

  7. C++ 数据结构 4:排序

    1 基本概念 1.1 定义 排序是计算机内经常进行的一种操作,其目的是将一组"无序"的数据元素调整为"有序"的数据元素. 1.2 数学定义 假设含n个数据元素的 ...

  8. Windows平台Python Pyramid实战从入门到进阶:第一个服务

    Pyramid是比较流行的Python Web 框架,比较灵活,功能也很强大.最近项目上用到,便打算学习一下.网上教程比较少,而且很多都是针对linux平台的,我是windows土著所以对那些linu ...

  9. CSS选择器组合符号

    组合连接符号 无连接符 多项条件 空格符 后代节点 > 子节点 + 兄弟节点 ~ 兄弟节点 这里要注意+和~之间的区别 +是后面紧邻兄弟 ~是后面所有兄弟

  10. Socket shutdown close简要分析

    shutdown 系统调用关闭连接的读数据通道  写数据通道 或者 读写数据通道: 关闭读通道:丢弃socket fd 读数据以及调用shutdown 后到达的数据: 关闭写通道:不同协议处理不同:t ...